Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-06-2006
Rayku Rayku is offline
Miembro
 
Registrado: jun 2006
Posts: 12
Poder: 0
Rayku Va por buen camino
Código Delphi [-]
cn.BeginTrans;
    cm := TADOCommand.Create(nil);
    cm.Connection := cn;
    cm.CommandText := ' UPDATE TIngresoDetalle SET '+
                      ' Tipo='+ QuotedStr(Tipo)+ ','+
                      ' Cantidad='+ Cantidad+ ','+
                      ' Monto='+ Monto+
                      ' WHERE  FechaLlegada=CDate('+QuotedStr(FechaLlegada)+') AND SerieF='+ QuotedStr(SerieF)+' AND NroFactura='+ QuotedStr(NroFactura)+' AND SerieG='+ QuotedStr(SerieG)+' AND NroGuia='+ QuotedStr(NroGuia)+'AND IDTipo='+ QuotedStr(IDTipo);
    cm.Execute;
    cn.CommitTrans;

espero q esto te sirva

Última edición por vtdeleon fecha: 10-06-2006 a las 00:25:34.
Responder Con Cita
  #2  
Antiguo 09-06-2006
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola Rayku, funciona pero solo en access y no en sqlServer porque no existe dicha función CDate, yo quisiera usar parametros justamente para no depender de una base de Datos y su respectivo formato de fecha, muchisimas gracias por responder.

Saludos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 10-06-2006
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
Cita:
Empezado por judit
Para que funcionara con Access tuve que definir los parámetros como DateTime
En realidad es asi que debe ser (DateTime) pues AsDate no exites, el codigo que habia puesto lo hice de memoria y no me acordaba.
Cita:
Empezado por Caro
pero si hago esto si me devuelve resultados
Código Delphi [-]
   qry.Close;
   qry.SQL.Text:='SELECT * FROM tabla WHERE fecha=:Param1';
   qry.Parameters.ParamByName('Param1').DataType:=ftDate;
   qry.Parameters.ParamByName('Param1').Value:=FormatDateTime ('mm/dd/yyyy',datepick1.Date);
   qry.Open;
dandole formato si muestra resultados hice la prueba con access y sqlServer y funciona, pero a mi me gustaria que funcionara de la otra forma,
Con Ado es diferente, eso es lo malo que he visto de esos componentes, a veces hay que especificarle el tipo del dato.
Cita:
Empezado por Rayku
Código Delphi [-]
cn.BeginTrans;
    cm := TADOCommand.Create(nil);
    cm.Connection := cn;
    cm.CommandText := ' UPDATE TIngresoDetalle SET '+
                      ' Tipo='+ QuotedStr(Tipo)+ ','+
                      ' Cantidad='+ Cantidad+ ','+
                      ' Monto='+ Monto+
                      ' WHERE  FechaLlegada=CDate('+QuotedStr(FechaLlegada)+') AND SerieF='+ QuotedStr(SerieF)+' AND NroFactura='+ QuotedStr(NroFactura)+' AND SerieG='+ QuotedStr(SerieG)+' AND NroGuia='+ QuotedStr(NroGuia)+'AND IDTipo='+ QuotedStr(IDTipo);
    cm.Execute;
    cn.CommitTrans;

espero q esto te sirva
Aqui volvemos al mismo problema de antes, pues estas enviando los datos directamente. Yo insisto en el uso de parametros, dejar que Delphi y la base de datos se encarguen del tipo de dato.
__________________
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
  #4  
Antiguo 17-04-2007
gabriel_romo gabriel_romo is offline
Registrado
 
Registrado: sep 2006
Posts: 2
Poder: 0
gabriel_romo Va por buen camino
Hola

Bueno ante todo dejenme decir que soy unpoco inexperto en esto; pero pues tengo un problema y no se como resolverlo, es con el manejo de fechas en las consultas sql, ya intente paando paramentros, pasando la fecha directamente de la fotma #mm/dd/aa# y la consulta no me regresa nada. el probolemacreo yo esta en la base de datos, porque yo he usado la forma #mm/dd/aa# en bases de datos que yo hago y me funciona bien; una vez me paso lo mismo,pero lo unico quie hice fue borrar la tabla y crearla de nuevo. pero ahora es distinto porque esa base de datos ya estaba y al parecer tiene el mismo problema, y como podrasn imaginarse no puedo borrar la tabla. El problema radica creo yo que el campo de fecha (que esta definido como fecha/hora en la base de datos) tiene algo asi como si la fecha la exigiera en formato mm/dd/aa hh:mm:ss yo que hice es quele envie la fecha #mm/dd/aa hh:mm:ss# pero pues me meraca error de todos modos. si alguien me puediera ayudar con eso, se los agradeceria mucho.
saludos
Responder Con Cita
  #5  
Antiguo 17-04-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
No dices que base de datos estas usando pero asi al vuelo intenta pasando asi los datos.

Cita:
#mm.dd.aaaa hh:mm:ss#
Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #6  
Antiguo 17-04-2007
hach hach is offline
Miembro
 
Registrado: mar 2007
Ubicación: Bariloche, Argentina
Posts: 44
Poder: 0
hach Va por buen camino
Formato fecha

Hace rato que no hago nada sobre access (por suerte decidi pasar todos mis desarrollos a firebird) pero creo recordar que tenes que pasar en el query las fechas con formato 'mm/dd/yyyy' no 'dd/mm/yyyy' como estas pasando

Espero que esto se sea de ayuda
Responder Con Cita
  #7  
Antiguo 17-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola a todos
Bueno para empezar access es como el juguete en bases de datos, tiene un generador de consultas muy facil de usar.
Para hacer una consulta estimando dos fechas se puede hacer tanto por parametros como ya han indicado los maestros, como por una sencilla sentencia sql.
Para empezar como access es un poco quisquillosa pues le decimos lo que queremos y luego le decimos como queremos que nos presente la fecha asi:
Código Delphi [-]
ADOQuery1.SQL.Add('  Select FechaTransac, CodTransac, Documento From TUTABLA ');
ADOQuery1.SQL.Add(' WHERE  TUTABLA.FechaTransac >= #'+DateToStr(DateTimePicker1.Date)+ '# AND  TUTABLA.FechaTransac <= # '+DateToStr(DateTimePicker2.Date)+'#');
ShortDateFormat := 'dd/mm/yyyy';
Al usar el generador de consultas de access, se vera el codigo sql y facilmente se podra implementar en un query.
Bueno creo que mas facil no se puede.
Saludos
Responder Con Cita
  #8  
Antiguo 18-04-2007
gabriel_romo gabriel_romo is offline
Registrado
 
Registrado: sep 2006
Posts: 2
Poder: 0
gabriel_romo Va por buen camino
Gracias!!!

Muchas Gracias!!, si era eso el error. Una disculpa que soy novato
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
Filtrar por fechas CamiloU Varios 1 10-04-2006 23:37:02
Problema entre query y sentencia sql ilichhernandez Conexión con bases de datos 1 17-11-2005 21:00:05
Filtrar fechas en QuickReport blamsa Impresión 1 06-05-2005 14:15:46
filtrar por fechas y por un campo mas mainau Conexión con bases de datos 9 01-04-2004 16:23:16
Problema con Query y Fechas anitra_cattivo Conexión con bases de datos 1 03-09-2003 19:15:42


La franja horaria es GMT +2. Ahora son las 12:32:59.


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