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 04-08-2006
Avatar de gusanita
gusanita gusanita is offline
Miembro
 
Registrado: dic 2005
Posts: 30
Poder: 0
gusanita Va por buen camino
Hola Graicas por atender!!

Bueno hice la prueba y quedo asi:

Código Delphi [-]
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('Select D.ALU_CTRL, D.ALU_ESP, C.ESP_CLV, C.ESP_CARRERA');
ADOQuery.SQL.Add('From DATPERAL as D, CARRERAS as C');
ADOQuery.SQL.Add('Where cast(D.ALU_ESP as char (2)) = C.ESP_CLV');
ADOQuery.SQL.Add(';');
ADOQuery.Open;

Me manda un mensaje de Error no especificado !!!

Mi Base de Datos esta en Access

El campo D.ALU_ESP es de tipo Numerico Doble

El campo C.ESP_CLV es de Tipo Texto

Tal vez el error esta en el código, pero lo pongo para que lo cheque!!

Gracias por su atencion!!!
__________________
No Decaigas que Vivir es Aprender...

Última edición por gusanita fecha: 04-08-2006 a las 19:48:03.
Responder Con Cita
  #2  
Antiguo 04-08-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Intenta con

Código SQL [-]
where str(D.ALU_ESP) = str(C.ESP_CLV)

// Saludos
Responder Con Cita
  #3  
Antiguo 04-08-2006
Avatar de gusanita
gusanita gusanita is offline
Miembro
 
Registrado: dic 2005
Posts: 30
Poder: 0
gusanita Va por buen camino
Talking Gracias!!!

Que bien!!!

Intente como me sugeriste y quedó de la siguiente manera:

Código Delphi [-]
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('Select D.ALU_CTRL, D.ALU_ESP, C.ESP_CLV, C.ESP_CARRERA');
ADOQuery.SQL.Add('From DATPERAL as D, CARRERAS AS C');
ADOQuery.SQL.Add('Where str (D.ALU_ESP) = str (C.ESP_CLV)');
ADOQuery.SQL.Add(';');
ADOQuery.Open;

Y funciona muy bien!!!

Muchas Gracias!!!
__________________
No Decaigas que Vivir es Aprender...
Responder Con Cita
  #4  
Antiguo 17-08-2006
JuanPa1 JuanPa1 is offline
Miembro
 
Registrado: may 2006
Posts: 66
Poder: 19
JuanPa1 Va por buen camino
Comparar fechas

Como le hago si lo que yo quiero es comparar 2 fechas, el tipo de dato en sql server es datetime y yo quiero comparar este campo con una fecha q yo le paso como parametro...gracias
Responder Con Cita
  #5  
Antiguo 17-08-2006
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Pues con un simple "=". Las fechas internamente se almacenan como números, así que no deberías tener problema.
Otra cosa es que quieras comparar sólo la fecha y no incluir la hora. No utilizo sql server, pero seguro que puedes truncar datos.

Así si quieres que esté entre un margen de fechas.
Código SQL [-]
WHERE TRUNC(DS.FECHA) BETWEEN :FECINI AND :FECFIN
O si quieres que sea igual a una fecha.
Código SQL [-]
WHERE TRUNC(DS.FECHA) = :FECINI
Responder Con Cita
  #6  
Antiguo 17-08-2006
JuanPa1 JuanPa1 is offline
Miembro
 
Registrado: may 2006
Posts: 66
Poder: 19
JuanPa1 Va por buen camino
Comparar 2 fechas

Mira cuando yo le pongo de esta manera me funciona perfectamente:
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate from visit where RegDate = '' 03/01/2003 '' ');
Pero lo que yo quiero es en lugar de ponerle directamente la fecha pasarle como un parametro de tal manera que quede mas o menos asi:
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate from visit where RegDate = '' ' + dia + ' '' ');
Pero en este caso no me corre el programa porque dice que los tipos String y TDate no son compatibles.
El tipo de dato del parametro dia en delphi es de tipo TDate y el campo RegDate en sqlserver es de tipo DateTime, cual crees q es mi problema..
Ojo, ya probe con TRUNC y tampoco corre el programa...
Responder Con Cita
  #7  
Antiguo 18-08-2006
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Antes de nada te rogaría que usases las etiquetas, sino leer el código puede ser muy engorroso.
Cita:
Empezado por JuanPa1
Mira cuando yo le pongo de esta manera me funciona perfectamente:
Código Delphi [-]
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate
from visit 
where RegDate = '' 03/01/2003 '' ');
Pero lo que yo quiero es en lugar de ponerle directamente la fecha pasarle como un parametro de tal manera que quede mas o menos asi:
Código Delphi [-]
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate
from visit 
where RegDate = '' ' + dia + ' '' ');
Pero en este caso no me corre el programa porque dice que los tipos String y TDate no son compatibles.
El tipo de dato del parametro dia en delphi es de tipo TDate y el campo RegDate en sqlserver es de tipo DateTime, cual crees q es mi problema..
Ojo, ya probe con TRUNC y tampoco corre el programa...

Para pasárselo así tendrías que formatear la fecha:
Código Delphi [-]
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate
from visit 
where RegDate = '' ' + formatdatetime('dd/mm/yy', dia) + ' '' ');

O si lo haces como te dije en el mensaje anterior sólo tienes que pasarle la fecha como parámetro.
Código Delphi [-]
qry_reporte.ParamByName('fecini').AsDateTime := dia.Date;
Responder Con Cita
  #8  
Antiguo 18-08-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Cita:
Empezado por JuanPa1
Mira cuando yo le pongo de esta manera me funciona perfectamente:
Código Delphi [-]
qry_reporte.SQL.Add('SELECT visit.BranchName,visit.category,visit.StartTime,visit.EndTime,visit.RegDate from visit where RegDate = '' 03/01/2003 '' ');
¿Seguro?, de qué mes te la los resultados, ¿de enero o de marzo? (corre la consulta y despues responde )

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
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
comversion de tipos fabian20s Varios 5 31-03-2005 22:09:03
Incompatibilidad .NET SP1 y D8/C#Builder mamcx .NET 0 10-09-2004 00:20:19
Incompatibilidad c/ Windows 2000 inetplus Varios 1 17-06-2004 23:12:53
... 100 tipos... Jure Humor 0 18-03-2004 14:24:30
¿Incompatibilidad de ADO con Windows XP? sandyhidrogo Conexión con bases de datos 3 08-05-2003 06:02:03


La franja horaria es GMT +2. Ahora son las 10:38:33.


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