Jos*_*F91 1 c# syntax ms-access insert sql-insert
这是我的代码,我在我的INSERT statementfor中遇到语法错误:
string strSql = "INSERT INTO Responses (OCR, DeadlineDate, OCR Title) VALUES ('"+textBox5.Text+"','"+textBox7.Text+"', '"+textBox6.Text+"')";
OleDbConnection newConn = new OleDbConnection(strProvider);
OleDbCommand dbCmd = new OleDbCommand(strSql, newConn);
newConn.Open();
dbCmd.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
列名OCR Title无效,你必须使用[]like 来转义它[OCR Title]:
INSERT INTO Responses (OCR, DeadlineDate, [OCR Title]) VALUES( ...
Run Code Online (Sandbox Code Playgroud)
另外,请尝试使用参数化查询而不是连接值:
string strSql = "INSERT INTO Responses (OCR, DeadlineDate, [OCR Title]) VALUES (?, ?, ?)";
using (OleDbConnection newConn = new OleDbConnection(strProvider))
{
using (OleDbCommand dbCmd = new OleDbCommand(strSql, newConn))
{
dbCmd.CommandType = CommandType.Text;
dbCmd.Parameters.AddWithValue("OCR", textBox5.Text);
dbCmd.Parameters.AddWithValue("DeadlineDate", textBox7.Text);
dbCmd.Parameters.AddWithValue("[OCR Title]", textBox6.Text);
newConn .Open();
dbCmd.ExecuteNonQuery();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7706 次 |
| 最近记录: |