Ayuda con monthcalendar y sql server
Hola amigos, tengo una gran duda, estoy intentando hacer que cuando seleccione una fecha en mi monthcalendar aparezcan los datos de esa fecha en una grilla, hasta el momento iba bien hasta que me di cuenta que no aparecian los datos, en la base de datos la fecha se guardo de esta manera 2012-02-16 y el monthcalendar la muestra asi 16-02-2012 supongo que ese es el problema, la fecha (que en la base de datos es datetime) la ingrese mediante getdate().
Espero su pronta ayuda para que me guien en este problema gracias. |
Hola krewer, tienes que darle formato a tu fecha en la consulta que haces, puedes utilizar FormatDateTime.
Saluditos |
Hola, gracias por el codigo, me ayudo mucho... ahora el drama es que me aparece el siguiente error:
Error 'Operand type clash: int is incompatible with date Al menos yo creo que no he hecho nada malo, aqui dejo mi codigo procedure Tfregistro1.fechaClick(Sender: TObject); var sql:string; var date:string; begin FormatDateTime('yyyy-mm-dd', fecha.Date); sql:='select * from BITACORA where NICK='+quotedstr(Uvariables.nombre)+' and FECHA='+datetostr(fecha.Date)+''; fdata.consulta5.Close; fdata.consulta5.SQL.Clear; fdata.consulta5.SQL.Add(sql); fdata.consulta5.Open; end; Gracias |
Muchas gracias de todas maneras lo acabo de solucionar :D hasta la próxima.
|
Hola krewer.
Me alegra mucho que hayas solucionado tu problema y estaría buenísimo que compartieras con nosotros la solución que encontraste.;) Por favor, cuando incluyas código en tu mensaje usa las etiquetas para darle mayor legibilidad al mismo, su uso es: Saludos y gracias por tu colaboración.:) |
Hola asi lo hice
|
Lo mejore de esta manera
Así no paso ningún dato por parámetro |
Hola krewer.
Primero que nada agradezco que hayas compartido tu solución. :) Aunque el último código es mas compacto, es vulnerable a la inyección SQL. El uso de parámetros evita totalmente esa posibilidad. Usándo parámetros: Generámos un código un poco más extenso, pero mucho más seguro. También hay que destacar que si el valor de 'nombre' es tomado internamente por la aplicación y no ingresado por el usuario, no hay posibilidad de inyección SQL. De todos modos, el uso de parámetros es una buena costumbre. Un saludo. |
La franja horaria es GMT +2. Ahora son las 00:01:37. |
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