stmt statement sentencias prepared preparadas ejemplos php mysql mysqli

php - statement - ¿Hay alguna manera de ver una consulta preparada, ya que se ejecutará en la base de datos?



sentencias preparadas php mysqli (4)

Active el registro de consultas de mysql y registrará todas las consultas en un archivo de texto para que lo revise.

Posible duplicado:
Declaraciones preparadas PDO

Estoy usando la extensión mysqli en PHP y me pregunto, ¿hay alguna forma de ver una consulta preparada, ya que se ejecutará en el servidor, por ejemplo, la consulta es algo como esto?

select * from table1 where id = ? and name = ?

pero quiero ver la consulta una vez que se hayan completado los valores, así:

select * from table1 where id = 20 and name = "John"


Es la forma en que la mayoría de las veces estoy depurando mysql quires:

$ q = "select * from table1 where id =". $ id. "y name =". $ name; echo $ q;

El resultado genera todas las variables asignadas a la consulta.

Espero que te haya entendido exactamente, lo que querías.


Verlo donde? Si es su código, tiene la consulta y tiene los parámetros preparados, regístrelos por separado o reemplácelos en la cadena de consulta original. Si el enlace falla, obtendrá un error; de lo contrario, debe esperar que se "llenen" los mismos valores que los especificó.


Duplicado de declaraciones preparadas PDO

Respuesta corta: no. Una consulta preparada nunca se convertirá a la consulta que espera. Se ejecuta directamente por el servidor de la base de datos. Puede usar el registro de consultas de mysql o la función no documentada de la PDO debugDumpParams , pero ambas son solo aproximaciones.