SQL 错误:关键字“User"附近的语法不正确 [英] SQL error: Incorrect syntax near the keyword 'User'
本文介绍了SQL 错误:关键字“User"附近的语法不正确的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用 SQL 使用 C# 将数据插入到 SQL 数据库文件中,如下所示.
I am using SQL to insert data to SQL Database file using C# as follows.
String cs = System.Configuration.ConfigurationManager.ConnectionStrings["connection1"].ConnectionString;
SqlConnection conn = new SqlConnection(cs);
String sql = "INSERT INTO User (login, password, status) " +
"VALUES (@login, @password, @status)";
SqlCommand comm = new SqlCommand(sql, conn);
comm.Parameters.Add("@login", System.Data.SqlDbType.VarChar);
comm.Parameters.Add("@password", System.Data.SqlDbType.VarChar);
comm.Parameters.Add("@status", System.Data.SqlDbType.Bit);
try
{
conn.Open();
Console.WriteLine(conn.ToString());
comm.ExecuteNonQuery();
conn.Close();
return true;
}
catch (Exception ex)
{
throw (ex);
}
finally
{
conn.Close();
}
我在执行命令时收到以下错误.
I am getting the following error when command is executing.
关键字附近的语法不正确'用户'.:插入用户(登录,密码,状态)值(@login,@password,@status)
Incorrect syntax near the keyword 'User'.: INSERT INTO User (login, password, status) VALUES (@login, @password, @status)
请问我该如何解决?
添加了遗漏的参数值..
edit: missed parameter values added..
comm.Parameters["@login"].Value = this.Username;
comm.Parameters["@password"].Value = this._password;
comm.Parameters["@status"].Value = this.Status;
推荐答案
User
是一个保留关键字,所以你必须使用方括号来明确你的意思是object 名为User"它,即使用 [User]
而不是 User
.
User
is a reserved keyword, so you must use square brackets to make it explicit that you mean the object named "User" it, i.e. use [User]
instead of User
.
这篇关于SQL 错误:关键字“User"附近的语法不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文