SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: astrin en Martes 3 de Octubre de 2006, 21:51

Título: Cosulta Sobre La Fecha
Publicado por: astrin en Martes 3 de Octubre de 2006, 21:51
Holas eh tenido problemas con la fecha...al intertar realizar una consulta de registros de facturas emitidos de una fecha a otra...el error es estas
"Erro de sintaxis en la fecha en la expresion de consulta fechaemision>=#00/01/2006# and fechaemision<=#00/03/2006#"

"Select * from Cab_Pedido where FechaEmision >=#" & Desde.ToString("mm/dd/yyyy") & "# and FechaEmision <=#" & Hasta.ToString("mm/dd/yyyy") & "#"
este el el query q utilizo, por q la fecha sale asi si del DateTimePicker1 q lo muestro esta como 01/01/2006 -03/10/2006 tambien lo guardo en la base de datos como dd/mm/yyyy tambien eh intentado traer en ese formato trae pero no respeta el parametro...si alguien me puede ayudar seria de mucha ayuda gracias
Título: Re: Cosulta Sobre La Fecha
Publicado por: ElNapster en Miércoles 4 de Octubre de 2006, 00:05
Lo que podrias hacer es lo siguiente:

select Convert(varchar,getdate(),101)

el getdate es en este ejemplo la fecha actual , tu le pones la fecha recibida o a convertir , el 101 es el formato que tendra , pueden ser 102,103.... ya que son varios formatos , este select lo guardas en una tu variable y luego ya las utilizas la ventaja esque las fechas tendran el mismo formato...  :comp:
Título: Re: Cosulta Sobre La Fecha
Publicado por: Bigpercynet en Miércoles 4 de Octubre de 2006, 05:02
No os compliquéis, si lo que deseáis es sólo enviar el query en forma de un string a la base de datos, ps creo que tendrías que hacer esto, vale?...

"Select * from Cab_Pedido where FechaEmision >='"
 & Desde.ToString("mm/dd/yyyy") & "' and FechaEmision <='"
& Hasta.ToString("mm/dd/yyyy") & "'"


Te habrás dado cuenta que he quitado el #, y lo he reemplazado por un ' ....no veo la necesidad de usarlo, suponiendo que en tu base de datos la fecha tiene el mismo formato.

Creo que por el signo # ha sucedido ese error.

Algo adicional es lo siguiente:

si tienes lo siguiente una campo en la tabla de la DB como esto:

ModifiedDate
1998-01-04 00:00:00.000

podéis formatearlo usando esto:

SELECT CONVERT(VARCHAR,A.ModifiedDate, 2) FechaFormateada,A.ModifiedDate
FROM Person.Address A


obtendrás esto, vale?

FechaFormateada                 ModifiedDate
--------------------------          -----------------------
98.01.04                              1998-01-04 00:00:00.000


Sale, ahora si me guardo,

PERCY REYES - blog (http://www.ozonicco.info)