【发布时间】:2017-02-06 05:25:37
【问题描述】:
使用 c# 使用“插入”SQL 命令时出现语法错误。我正在使用 Access db 来存储一些数据。 令人惊讶的是,当我将确切的命令复制到 MS Access 中以尝试它是否不正确时,它就像魅力一样。我有点困惑!我感谢这方面的任何想法或帮助。这是我的代码:
using (OleDbConnection connection = new OleDbConnection(Global.ConString))
{
using (OleDbCommand command = new OleDbCommand())
{
command.Connection = connection;
command.CommandType = CommandType.Text;
command.CommandText = "INSERT INTO Users(Name,UserName,Password,Customers,Jobs,Invoice,Statement,Reports,Users) values (@name,@UserName,@Password,@Customers,@Jobs,@Invoice,@Statement,@Reports,@Users)";
command.Parameters.AddWithValue("@name",fullName.Text );
command.Parameters.AddWithValue("@UserName", userName.Text);
command.Parameters.AddWithValue("@Password", passWord.Text);
command.Parameters.AddWithValue("@Customers", Customers.Checked);
command.Parameters.AddWithValue("@Jobs", Jobs.Checked);
command.Parameters.AddWithValue("@Invoice", Invoice.Checked);
command.Parameters.AddWithValue("@Statement", Statement.Checked);
command.Parameters.AddWithValue("@Reports", Report.Checked);
command.Parameters.AddWithValue("@Users", userDef.Checked);
try
{
connection.Open();
int recordsAffected = command.ExecuteNonQuery();
if (recordsAffected > 0)
{
foreach (Control item in newRecord.Controls)
{
if (item is TextBox) item.ResetText();
}
timer1.Enabled = true;
}
else
MessageBox.Show("Insert Fail");
}
catch (OleDbException err)
{
MessageBox.Show("Somthing wrong. Error no. is: " + err.ErrorCode + "..." + err.Message);
}
}
}
【问题讨论】:
标签: c# sql ms-access syntax-error sql-insert