Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak w PHP z PDO sprawdzić końcowe, sparametryzowane zapytanie SQL?

Myślę więc, że w końcu odpowiem na moje własne pytanie, aby mieć pełne rozwiązanie dla rekordu. Ale muszę podziękować Benowi Jamesowi i Kailashowi Badu, którzy dostarczyli wskazówek.

Krótka odpowiedź
Jak wspomniał Ben James:NIE .
Pełne zapytanie SQL nie istnieje po stronie PHP, ponieważ zapytanie z tokenami i parametry są wysyłane oddzielnie do bazy danych.Tylko po stronie bazy danych istnieje pełne zapytanie.

Nawet próba stworzenia funkcji zastępującej tokeny po stronie PHP nie gwarantuje, że proces zamiany będzie taki sam jak w przypadku SQL (trudne rzeczy, takie jak typ tokena, bindValue vs bindParam, ...)

Obejście
W tym miejscu rozwijam odpowiedź Kailasha Badu.Dzięki rejestrowaniu wszystkich zapytań SQL możemy zobaczyć, co naprawdę działa na serwerze.W przypadku mySQL można to zrobić, aktualizując plik my.cnf (lub my.ini w mój przypadek z serwerem Wamp) i dodanie linii typu:

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

Po prostu nie uruchamiaj tego w wersji produkcyjnej!!!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gdzie klauzula do filtrowania wierszy w MySQL

  2. Jak połączyć wiele wierszy w jedną kolumnę w MySQL?

  3. Różnica między dwiema datami w MySQL

  4. Szybkie spojrzenie na funkcje numeryczne SQL Server

  5. Mechanizmy śledzenia zmian w schemacie bazy danych