Ver Mensaje Individual
  #1  
Antiguo 23-03-2008
csja csja is offline
Registrado
 
Registrado: nov 2007
Posts: 4
Reputación: 0
csja Va por buen camino
Unhappy Parametros en consulta SQL

Buenas a todos los foreros, mi problema es el siguiente:

Tengo una tabla llamada clientes en una base de datos. Bien, de esta tabla me gustaría hacer una consulta que me devolviera una serie de datos. Mi tabla tiene unos campos llamados Musica1, Musica2, etc... y Bebida1, Bebida2, etc... En un formulario tengo unos checkbox que marco y desmarco para pasarle los parametros a la consulta y un botón que es el encargado de ejecutar la consulta y un report que muestre los resultados de la consulta. La consulta que yo hago es la siguiente para que os vayais orientando:

SELECT SEXO, NOMBRE, APELLIDO1, APELLIDO2, FECHANAC, EDAD, DIRECCION, PROVINCIA, TELEFONO, EMAIL, DEDICAS, MUSICA1, MUSICA2, MUSICA3, MUSICA4, MUSICA5, MUSICA6, MUSICA7, BEBIDA1, BEBIDA2, BEBIDA3, BEBIDA4, BEBIDA5, BEBIDA6, BEBIDA7, BEBIDA8, INFORMADO
FROM CLIENTES
WHERE (SEXO="HOMBRE")
AND (BEBIDA1=:RON)
AND (BEBIDA2=:WHISKY)
AND (BEBIDA3=:GINEBRA)
AND (MUSICA1=:POPESPANOL)
AND (MUSICA3=:POP8090)
AND (MUSICA4=:POPINTERNACIONAL)
AND (MUSICA5=:SALSA);

y los if con los checkbox del formulario son así:

if CheckBox1.Checked then
DataModule3.QueHombres.Parameters[0].Value := 'Ron'
else
DataModule3.QueHombres.Parameters[0].Value := 0;

El caso es que en mysql poner un valor cero es como tener un valor vacio y mysql no le da importancia a ese valor o no lo interpreta, de tal manera que si yo pongo

SELECT SEXO, NOMBRE, APELLIDO1, APELLIDO2, FECHANAC, EDAD, DIRECCION, PROVINCIA, TELEFONO, EMAIL, DEDICAS, MUSICA1, MUSICA2, MUSICA3, MUSICA4, MUSICA5, MUSICA6, MUSICA7, BEBIDA1, BEBIDA2, BEBIDA3, BEBIDA4, BEBIDA5, BEBIDA6, BEBIDA7, BEBIDA8, INFORMADO
FROM CLIENTES
WHERE (SEXO="HOMBRE")
AND (BEBIDA1="RON")
AND (BEBIDA2=0)
AND (BEBIDA3=0)
AND (MUSICA1=0)
AND (MUSICA3=0)
AND (MUSICA4=0)
AND (MUSICA5=0);

desde phpmydamin me devuelve todos los hombres de que beben ron pero desde delphi no me devuelve nada.

Alguien sabe el caracter vacío en delphi o si hay que ponerle alguna propiedad a los parametros para que me saque la misma consulta que desde el phpmyadmin????
Responder Con Cita