我想在SQL Server CE(.sdf
)中插入一个出生日期,从.csv
文件中读取。
TextLine(5)
是字符串格式的日期:ddMMyyyy
我将其转换为VB DateTime()
,它会以这种方式转换:Day/Month/Year
之后,我将它插入SQL Server CE,一切都很好,但问题是,在数据库上总是显示为01/01/1900
,我做错了什么?
另外我放了一个Console.WriteLine
来检查是否有任何错误,没有我预期的错误。
apadronado.fecnac
是DateTime
我的提供商也是cultureinfo
是en-US
我有以下代码:
apadronado.fecnac = DateTime.ParseExact(TextLine(5).ToString & " 00:00", _
"yyyyMMdd HH:mm", provider)
cmd.CommandText = "INSERT INTO personas VALUES ('" & apadronado.ci & "','" & _
apadronado.nombre & "','" & apadronado.apellido & "','" & _
apadronado.dpto & "','" & apadronado.ciudad & "'," & _
apadronado.fecnac & ")"
Console.WriteLine(cmd.CommandText)
Try
cmd.ExecuteNonQuery()
Catch ex As Exception
Console.WriteLine(ex)
End Try
我做错了什么?
由于
答案 0 :(得分:2)
您需要在日期值周围添加单引号。
变化:
apadronado.ciudad & "'," & _
apadronado.fecnac & ")"
为:
apadronado.ciudad & "','" & _
apadronado.fecnac & "')"