¿Hay alguna manera de ver una consulta preparada ya que se ejecutará en la base de datos? [duplicar]

StackOverflow https://stackoverflow.com/questions/305179

  •  08-07-2019
  •  | 
  •  

Pregunta

  

Posible duplicado:
   Declaraciones preparadas de PDO

Estoy usando la extensión mysqli en PHP y me pregunto si existe alguna forma de ver una consulta preparada, ya que se ejecutará en el servidor, p. La consulta es algo como esto

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

pero quiero ver la consulta después de completar los valores, así:

select * from table1 where id = 20 and name = "John"
¿Fue útil?

Solución

Duplicado de Declaraciones preparadas de PDO

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

Otros consejos

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

¿Ves dónde? 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 los mismos valores se "llenen". en como los especificaste.

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

$ q = " seleccione * de la tabla1 donde id = ". $ id. " y nombre = ". $ nombre; echo $ q;

El resultado genera todas las variables asignadas a la consulta.

Espero haberte entendido exactamente, lo que querías.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top