SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: DSK25 en Martes 29 de Mayo de 2012, 17:31

Título: Problema al insertar la fecha de un datetimepicker a base de datos
Publicado por: DSK25 en Martes 29 de Mayo de 2012, 17:31
Estoy haciendo una aplicación y en uno de mis formularios requiero ingresar fecha, el problema es que me manda error al insertar:

Dim InsertarDatos As String = "INSERT INTO MiTabla (Fecha) VALUES (" & DateTimePicker1.Value & ")"

Me manda este error: Línea 1: sintaxis incorrecta cerca de '09'. (en la fecha 28/05/2012 09:16:00 p.m.)

Se me ocurrio poner asi : DateTimePicker1.Value.Date , pero me inserta la fecha 01/01/1900 y no la actual

Al parecer el error esta en que SQL Server no acepta ese "a.m." o "p.m." en la hora y quisiera saber si se puede hacer que la fecha 28/05/2012 09:16:00 p.m. salga asi 28/05/2012 21:16:00 (sin "p.m."), he probado convertir la fecha a Cadena de texto y en mi base de datos cambiar Datetime a nvarchar para guardar la fecha y resulto pero no lo veo muy conveniente.
Título: Re:Problema al insertar la fecha de un datetimepicker a base de datos
Publicado por: gabio2 en Miércoles 30 de Mayo de 2012, 21:16
Mira puedes leer aquí

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx#Y456 , hay ejemplos en VB y C#

y aquí

http://www.csharp-examples.net/string-format-datetime/

Podras ver como utilizar string.Format()

Yo en lo personal lo uso así :

Código: C#
  1. string.Format("'{0:yyyy-MM-ddTHH:mm:ss}'", DateTimePicker1.Value); // Resultado = '2012-05-30T09:55:22', ahora a tú sentencia SQL le agregas CONVERT(datetime,'2012-05-30T09:55:22')  y no tendrás más problemas con las fechas ...

Eso es con código en C# sin embargo, es muy similar en VB..


Espero te sirva saludos.. :)