尝试将新记录插入Access数据库时出现SQL语法错误

尝试将新记录插入Access数据库时出现SQL语法错误,第1张

尝试将新记录插入Access数据库时出现SQL语法错误

单词POSITION是MS-Access-Jet中的保留关键字。
您将其用作表名,因此需要将其用方括号括起来

cmdInsert.CommandText = "INSERT INTO [Position] .......

一部分原因是,您的代码非常糟糕。不要使用字符串Cancatenation来构建sql命令。
当您的输入中有一个单引号或您是否有其他字段需要输入值的特定格式时,这种做法会导致语法错误。但是最糟糕的是Sql
Injection问题。

因此,您的代码应采用以下方式编写:

cmdInsert.CommandText = "INSERT INTO [Position] (Com_ID, Stu_ID, Pos_StartDate, Pos_Type, " +   "Pos_Description, Pos_Title) VALUES " +   "(?,?,?,?,?,?)"cmdInsert.Parameters.AddWithValue("@p1",ddlCompany.SelectedValue)cmdInsert.Parameters.AddWithValue("@p2",ddlStudent.SelectedValue)cmdInsert.Parameters.AddWithValue("@p3",CalStartDate.SelectedDate.Date)cmdInsert.Parameters.AddWithValue("@p4",ddlPositionType.SelectedValue)cmdInsert.Parameters.AddWithValue("@p5",txtDescription.Text)cmdInsert.Parameters.AddWithValue("@p6",txtPositionTitle.Text)cmdInsert.Connection = cnnOLEDBcmdInsert.ExecuteNonQuery()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5508608.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存