2010-02-11 41 views
43

Có cách nào để truy vấn truy vấn đã được sử dụng để tạo đối tượng câu lệnh PDO Prepared?Lấy lại truy vấn từ câu lệnh chuẩn bị PDO

+0

Có thể trùng lặp [Lấy chuỗi truy vấn SQL thô từ các câu lệnh được chuẩn bị PDO] (http://stackoverflow.com/questions/210564/getting-raw-sql-query-string-from-pdo-prepared-statements) – FFirmenich

Trả lời

31
+0

Bingo : http://www.php.net/manual/en/class.pdostatement.php#92046 – Strae

+38

Bất cứ khi nào tôi sử dụng nó, nó vẫn hiển thị các thông số như là các trình giữ chỗ. Có anyway để có được chuỗi với các params thiết lập? Cách DB nhận được nó? –

+3

Bạn sẽ phải kiểm tra nhật ký cơ sở dữ liệu của mình. Đối với MySQL, hãy kiểm tra trang này: http://dev.mysql.com/doc/refman/5.0/en/query-log.html – Arkh

9

Nếu bạn không phản đối việc mở rộng mặc định \ PDO và đối tượng \ PDOStatement, bạn có thể xem xét tìm kiếm tại địa chỉ:

github.com/noahheck/E_PDOStatement

Phần mở rộng này để PDO cho phép bạn xem một tuyên bố truy vấn đầy đủ như một ví dụ về những gì có thể được thực thi ở cấp cơ sở dữ liệu. Nó sử dụng regex để nội suy các tham số ràng buộc của câu lệnh PDO của bạn.

Bằng cách mở rộng định nghĩa \ PDOStatement mặc định, E_PDOStatement có thể cung cấp tính năng nâng cao này cho chức năng mặc định mà không yêu cầu sửa đổi luồng công việc bình thường của bạn.

Tuyên bố từ chối trách nhiệm: Tôi đã tạo tiện ích mở rộng này.

Tôi chỉ hy vọng nó hữu ích cho người khác.

Các vấn đề liên quan