Delphi - Don

 
Vista:

Don

Publicado por Jorge (4 intervenciones) el 13/06/2008 15:59:26
Hola. ¿Existe alguna propiedad que me indique si un componente ADOQuery encontro algo al ejecutar su sentencia SQL? si existe, ¿Cual es?

Ejemplo:

{busca todos los registros en los que el contenido del campo ID sea igual a 1}
ADOQuery1.SQL.ADD('select * from tabla where ID=1');

{¿como escribiría una condición en la que pregúnto si la sentencia anterior encontro resultados?}
if ADOQuery1.??? then Showmessage('encontro resultados') else showmessage('No encontro resultados');

{Si no van a contestar mi duda por favor no respondan, es molesto ver 20 mensajes que no me dicen lo que me interesa saber o que me ofrecen alternativas como la de "y si mejor creas un grid para ver los resultados" y cosas por el estilo. Gracias}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

¿Como saber si encontro algo un SQL query ?

Publicado por Jorge (4 intervenciones) el 13/06/2008 16:03:45
En el ejemplo anterior solo agregué la cadena de busqueda epro no la ejecuté. abajo coloco el código corregido.

{busca todos los registros en los que el contenido del campo ID sea igual a 1}
ADOQuery1.SQL.ADD('select * from tabla where ID=1');
ADOQuery1.Active; {Ejecuta la sentencia SQL}
{¿como escribiría una condición en la que pregúnto si la sentencia anterior encontro resultados?}
if ADOQuery1.??? then Showmessage('encontro resultados') else showmessage('No encontro resultados');

//Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Don

Publicado por Eva (484 intervenciones) el 13/06/2008 16:51:31
>>{Si no van a contestar mi duda por favor no respondan, es molesto ver 20 mensajes
>>que no me dicen lo que me interesa saber o que me ofrecen alternativas como la de "y
>>si mejor creas un grid para ver los resultados" y cosas por el estilo. Gracias}

Cundo se contesta en el foro es con la intención de ayudar, y quizás en tu caso lo único que pretendes es aprender esto en concreto, pero muchas otras personas, incluyendome yo, a veces necesitamos una solución a algo, y puede haberla de una manera mucho más sencilla de lo que nosotros vemos, de ahí que se den alternativas.

En tu caso pones.

Si la consulta si está vacía entonces es que no ha encontrado resultados en caso contrario es que si ha encontrado algún resultado
o viceversa
Si la consulta no está vacía entonces es que si ha encontrado resultados en caso contrario es que no ha encontrado algún resultado

...pero claro con lenguaje que la máquina entienda, algo parecido a esto

if not ADOQuery1.IsEmpty then Showmessage('encontro resultados') else showmessage('No encontro resultados');
o viceversa
if ADOQuery1.IsEmpty then Showmessage('No encontro resultados') else showmessage('Si encontro resultados');

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gracias

Publicado por Jorge (4 intervenciones) el 13/06/2008 18:46:41
Hola, le agradesco que se haya tomado el tiempo de contestar mi duda satisfactoriamente, me ha sido de gran ayuda.

Por favor no tome personal la forma en que pedi ayuda, yo no soy informatico ni nada a fin a la informatica, pero uso delphi para administrar mi negocio y solo aprendo lo que vaya necesitando como este caso. Si escribi lo que escribi es porque muchas veces en otros foros me contestan soluciones que se me hacen muy complicadas y/o no las entiendo debido a que no soy informatico y en el peor de los casos solo recibo comentarios desagradables como "eso es facilisimo ¿que no so sabes hacer?" pero no me aclaran la duda.

Es la primera vez que entro a un foro y me contestan lo que pregunte satisfactoriamente y a la primera.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Gracias

Publicado por @lex (47 intervenciones) el 14/06/2008 03:34:01
Tambien se puede saber contando los registros devueltos con la funcion recordcount si esta devuelve cero significa que esta vacia o que no encontro resultados
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gracias de nuevo.

Publicado por Jorge (4 intervenciones) el 14/06/2008 16:14:32
Vaya, esa era otra pregunta que hiba a hacer hoy pero ya me la contestaron antes de que la formulara.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Gracias de nuevo.

Publicado por Eva (484 intervenciones) el 15/06/2008 18:30:04
Pero ojo con RecordCount porque algunas veces en algún tipo de base de datos no funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar