Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
Exclamation Error en Query

Hola compañeros del Club, hoy vengo con este problema...

Esta es la consulta que trato de hacer...

Código SQL [-]
select * from proaula where fecha='24/05/2007' and campo=2 and columna=2





Y este es el error...

ISC ERROR CODE:335544334
ISC ERROR MESSAGE:
conversion error from string "24/05/2007"
STATEMENT:
TIBOInternalDataset: "<TApplication>.frmMain.dlgWisql.<TIBOQuery>.<TIBOInternalDataset>."

Alguna solucion...?

O estoy ejecutando mal la sentencia... sera que alguien me ayuda con este sencillo problema...

Gracias...
Responder Con Cita
  #2  
Antiguo 27-06-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Chequea solo el ejemplo que he dado alli, utilizando parametros para esos casos de fecha. Lo que muy seguido pasa es que cada base de datos tienes sus formas de capturar fechas; Unos es con # y otros con comilla simple. En si depende de la base de datos. Pero usando Parametros te olvidas de eso y le dejas el trabajo sucio a la aplicacion y BBDD.

Suerte
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #3  
Antiguo 27-06-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
Bueno en realidad no encontre una respuesta exacta... sin hembargo probe con lo que me dices pero tampoco me funciono, lo mas "extraño" es que la misma sentencia en otra base de datos igual con tabla y datos; y ahi si me funciona... Gracias

Última edición por felipe88 fecha: 27-06-2007 a las 03:35:47.
Responder Con Cita
  #4  
Antiguo 27-06-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Verifica bien, porque si funciona bien en un lado, por que no en otro...

Saludos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 27-06-2007 a las 04:56:08.
Responder Con Cita
  #5  
Antiguo 27-06-2007
jacanche jacanche is offline
Miembro
 
Registrado: may 2003
Ubicación: Campeche,Campeche,Mexico
Posts: 137
Poder: 22
jacanche Va por buen camino
por que no checas el formato de fecha, quizas sea mm/dd/aaaa, por eso 24/05/2007, no es una fecha valida y te envia el mensaje de error de conversion
__________________
Saludos

Alfredo
Responder Con Cita
  #6  
Antiguo 27-06-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
Cita:
Empezado por jacanche
por que no checas el formato de fecha, quizas sea mm/dd/aaaa, por eso 24/05/2007, no es una fecha valida y te envia el mensaje de error de conversion
En eralidad tienes algo de razon con esto, en la tabla que me funciono me recibio las fechas en mm/dd/aaaa siendo tipo Timestamp y directamente a la tabla. El caso es, que la forma en que guardo la fecha es desde Delphi como tipo DateTime, pero si no dejara guardar la fecha asi... no saldria error ?

Ademas eso complicaria un poco el valor que le entrego a la sentencia del Query


Código Delphi [-]
Qurery1.SQL.Add('Select * from proaula where fecha=' + '''' + DateToStr(MonthCalendar1.Date + '''' + 'and campo=2 and columna=2'))




Y asi allí me sale el mismo error...

Igual si depronto pueda hacerlo asi... Como invierto el formato de fecha ?
Responder Con Cita
  #7  
Antiguo 27-06-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
¿porque no usas parámetros?

Código Delphi [-]
with tuquery do begin
...
 SQL.Add('where fecha = :Fecha')
 ParamByName('Fecha').AsDateTime := dtpFecha.DateTime;
...
end;
__________________

Responder Con Cita
  #8  
Antiguo 27-06-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Parece que a nadie le gusta usarlo de esa manera; me he dado cuenta que a muchos le gusta mas poner el "control" anidado a la cadena de la consulta.

Con paramentro siempre le dejas el trabajo a la aplicacio y/o BBDD y te olvidas de eso, que desde mi punto de vista, es fantastico.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #9  
Antiguo 27-06-2007
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por felipe88
Código Delphi [-]
Qurery1.SQL.Add('Select * from proaula where fecha=' + '''' + DateToStr(MonthCalendar1.Date + '''' + 'and campo=2 and columna=2'))
Tienes que tener en cuenta que en un esquema cliente-servidor la configuración regional del cliente no tiene porque ser igual a la del servidor. Para eso, te suguiero como ya hicieron varias veces, usar bind parameters, donde el dato es pasado bajo un formato standard independiente de la configuración regional. Ademas como ventaja para el servidor es mucho mas "económico" si varios clientes ejecutan consultas con bind parameters, o el mismo proceso varias veces.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #10  
Antiguo 29-06-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
El error persiste y al intentar pasar las variables por parametros no los reconoce ( aunque no hay error ) pero sin hembargo no trae los datos...
Responder Con Cita
  #11  
Antiguo 29-06-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Vamos a ver, intenta usar > o < en la clausura Where, puede ser que el campo este declarado como FechaHora.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #12  
Antiguo 12-07-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
...y si pongo en la base de datos el campo como tipo char..???

Podria funcionar...
Responder Con Cita
  #13  
Antiguo 12-07-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Cita:
Empezado por felipe88
...y si pongo en la base de datos el campo como tipo char..???

Podria funcionar...
No lo cambies ni de relajo.

Probaste?? Como vas?
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #14  
Antiguo 12-07-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
Pues en realidad me funciono... aunque ahora me preocupa son otras operaciones que yo realizaba con estos formatos, cambie un poco el codigo y espero bueno resulatos sino... Dios me ayude
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Error en mantenedor con query... ilichhernandez Conexión con bases de datos 1 09-11-2005 12:56:41
error al recorrer un query jorgeganc Conexión con bases de datos 5 11-03-2005 12:11:28
Error en Query trabuc SQL 4 04-10-2004 15:49:02
Error en Query silviodp Conexión con bases de datos 11 30-07-2004 15:58:52
Error al ejecutar Query silviodp Conexión con bases de datos 4 21-04-2004 23:17:17


La franja horaria es GMT +2. Ahora son las 14:14:53.


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
Copyright 1996-2007 Club Delphi