将日期插入 sql 数据库时出错?

Posted

技术标签:

【中文标题】将日期插入 sql 数据库时出错?【英文标题】:Getting error on inserting date into sql database? 【发布时间】:2017-06-16 20:30:24 【问题描述】:

我正在将记录插入数据库,但参数“日期”出现错误。任何想法都会很好。

myConnection.Open()
Dim sqlQry As String = "INSERT INTO MasterLabNumber (LabNumber, Location, Date)" + "VALUES(@LabNumber, @Location, @Date)"
Dim str As String
str = "SELECT * FROM MasterLabNumber WHERE (LabNumber = " & TextBox1.Text & ")"
Dim d As System.DateTime = DateTime.Now.ToString("yyyy/MM/dd")
Dim cmd As OleDbCommand = New OleDbCommand(sqlQry, myConnection)
cmd.Parameters.AddWithValue("@LabNumber", TextBox1.Text)
cmd.Parameters.AddWithValue("@Location", ComboBox1.Text)
cmd.Parameters.AddWithValue("@Date", d)

cmd.ExecuteNonQuery() <-- gets error here relating to adding the parameter date.

【问题讨论】:

试试Dim d As String = DateTime.Now.ToString("yyyy/MM/dd") 您插入的不是日期而是字符串 【参考方案1】:

是的,这是因为Date 是您在插入语句中使用的保留字。您需要使用[]

将其转义,如下所示
INSERT INTO MasterLabNumber (LabNumber, Location, [Date])

你的插入语句应该变成

Dim sqlQry As String = "INSERT INTO MasterLabNumber (LabNumber, Location, [Date]) VALUES(@LabNumber, @Location, @Date)"

【讨论】:

以上是关于将日期插入 sql 数据库时出错?的主要内容,如果未能解决你的问题,请参考以下文章

由于日期格式,将数据从 txt 文件导入 IBM netezza SQL 数据库时出错

使用 Pymssql 将数据插入 MS SQL DB 时出错

尝试将 Web 表单连接到 SQL 数据库以插入值时出错

尝试将数据插入多个表时出错 [C# Winform SQL Server] [关闭]

将日期插入数据库时​​出现 SQL 语法错误(框架:codeigniter)

java怎么使用日期格式化将时间插入mysql datetime数据类型中?