Tengo la siguiente consulta:DOP comprobación de campo contra preparada: param, manejo es NULL condiciones
//query:
$query = "
SELECT field1 FROM table
WHERE
field2 = :PARAM1
AND ...
AND fieldx = :PARAM1X";
//params:
$params = array();
$params [":PARAM" . $i] = NULL;
//prepare and execute:
$o = $cnx->prepare($query);
$o->execute($params);
¿Cómo podría obligar a los parametros con NULL
valores? ¿PDO cambiará automáticamente el = :PARAM1
al IS NULL
? Para dejarlo en claro, intentar calcular WHERE field = null
no funciona en mysql y nunca devolverá nada. Debemos usar WHERE field IS NULL
en su lugar.
Eso es lo que estoy tratando ahora.
debo decir que mis primeras pruebas son positivas pero en realidad no quieren descubrir un efecto secundario de 6 meses en un entorno de producción ...
¿Podemos ver el código que está utilizando para hacer el enlace? – ultranaut
sí, aquí lo publiqué. También corregí el título porque me di cuenta de que no "vinculaba" explícitamente a los params, sino que los preparaba (discúlpame) – Sebas
En mi opinión, fue un error cerrar esta pregunta como "no constructiva". Sin embargo, es un duplicado de esta pregunta: [¿Cómo enlazar un valor si quiero que acepte tanto INT como NULL con PDO?] (Http://stackoverflow.com/questions/7082405/). La respuesta aceptada es usar el [operador igual NULL-safe '<=>'] (http://dev.mysql.com/doc/refman/5.1/en/comparison-operators.html#operator_equal-to). – TachyonVortex