Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   problema con consulta en winxp (https://www.clubdelphi.com/foros/showthread.php?t=7278)

jpcancino 10-02-2004 18:10:36

problema con consulta en winxp
 
Hola, mi problema es el siguiente:

Estaba haciendo una plaicación en win98 con Delphi 5, y en la aplicación hago una consulta utilizando un query y en el mismo formulario hago la busqueda con un edit y un boton. Hago la consulta por nombre de productos y en win98 no tengo ningun problema, el problema sucede cuando me cambié de PC a uno que tenía winXP y ya no me hacía las consultas por nombre (en realidad la primera vez si la hacía, pero solo me entregaba un producto como resultado, pero en la tabla en realidad habian 100 productos con el nombre parecido a la busqueda que hice, por ejemplo "cad", y al hacer denuvo la busqueda ya no me entragaba nada) ni por familia, pero las por código si me las hacía.

la busqueda las hice con like.

¿Por qué funciona en el win98 y en winXP no?
¿a alguien le a pasado?

saludos

delphi.com.ar 10-02-2004 18:14:52

No tendría que haber problemas de compatibilidad de este tipo entre estas plataformas... ¿Porqué no nos muestras el fragmento del código donde haces el like?

Saludos!

jpcancino 10-02-2004 18:22:45

procedure Tbprodn.busClick(Sender: TObject);
var mysql:string;
begin
mysql:='SELECT CODIGO.CODIGO, CODIGO.NOMBRE, CODIGO.UNIDAD, PRECICAT.PRE'+
' FROM CODIGO INNER JOIN PRECICAT'+
' ON CODIGO.CODIGO = PRECICAT.COD WHERE CODIGO.NOMBRE LIKE '+#39+bprodn.edit1.text+'%'+#39+' AND PRECICAT.PRE > 0';
rprod.query1.sql.Clear;
rprod.query1.SQL.Add(mysql);
bprodn.Visible:=false;
busc.Show;
rprod.query1.Open;
rprod.Show;
bprodn.Visible:=true;
bprodn.Close;

ese es el código completo en el boton de busqueda, en este caso es otro formulario, no dode está el query, pero me pasa el mismo problema

jpcancino 10-02-2004 23:11:38

alguien sabe qué puede ser?

haron 10-02-2004 23:46:49

podria ser por que no has cerrado el query?
deberia ser:

query.close;
query.<lo_que_sea>
query.open;

Cita:

Empezado por jpcancino
procedure Tbprodn.busClick(Sender: TObject);
var mysql:string;
begin
mysql:='SELECT CODIGO.CODIGO, CODIGO.NOMBRE, CODIGO.UNIDAD, PRECICAT.PRE'+
' FROM CODIGO INNER JOIN PRECICAT'+
' ON CODIGO.CODIGO = PRECICAT.COD WHERE CODIGO.NOMBRE LIKE '+#39+bprodn.edit1.text+'%'+#39+' AND PRECICAT.PRE > 0';
rprod.query1.sql.Clear;
rprod.query1.SQL.Add(mysql);
bprodn.Visible:=false;
busc.Show;
rprod.query1.Open;
rprod.Show;
bprodn.Visible:=true;
bprodn.Close;

ese es el código completo en el boton de busqueda, en este caso es otro formulario, no dode está el query, pero me pasa el mismo problema


jpcancino 11-02-2004 14:34:10

lamentablemente no es eso :(

qué podrá ser?

guillotmarc 11-02-2004 14:52:12

Hola.

En el Windows 98 y en el XP ¿ utilizas exactamente la misma Base de datos ?. Por ejemplo, no usarás Access 97 y Access 2000.

¿ Que componentes utilizas ? ¿ BDE, ADO, ... ?. Comprueba que en las dos plataformas tengas la misma versión del motor de datos.

Saludos.

jpcancino 11-02-2004 15:01:38

Ya supe cual era el problema, la diferencia entre el win98 y el winXP es que en el winXP al hacer las consultas hace la diferencia entre minusculas y mayusculas, e cambio en el win98 no lo hace. Como yo hacía las consultas en minusculas no encontraba nada.

¿Por qué será esta diferencia?

Bueno, gracias de todas formas

jpcancino 11-02-2004 15:02:48

Cita:

Empezado por guillotmarc
Hola.

En el Windows 98 y en el XP ¿ utilizas exactamente la misma Base de datos ?. Por ejemplo, no usarás Access 97 y Access 2000.

¿ Que componentes utilizas ? ¿ BDE, ADO, ... ?. Comprueba que en las dos plataformas tengas la misma versión del motor de datos.

Saludos.

Si, utilizo la misma base de datos dbase IV y uso los componentes BDE

Saludos

guillotmarc 11-02-2004 15:17:53

Hola.

Verifica que tengas la misma versión del BDE en las dos. Además si utilizas el BDE mediante acceso ODBC y no nativo a dBase, entonces la diferencias puede estar en el driver ODBC para tablas dBase (que es casi seguro que será distinto).

Saludos.

jpcancino 14-02-2004 06:37:05

ah, si, yo creo que es eso. Y como lo uso mediante acceso nativo de dBase?


La franja horaria es GMT +2. Ahora son las 09:05:40.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi