我在将数据保存到程序的本地数据库时遇到问题。它不会将用户输入的值存储在用户表中。可能是什么问题,下面是一些代码和图片。
public void addInformationToDatabase()
{
string Sex = ddlGender.Text;
string Name = tbxName.Text;
string DOB = tbxDOB.Text;
string connectionString = WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlConnection Con = new SqlConnection(connectionString);
SqlCommand command = new SqlCommand();
command.Connection = Con;
command.CommandType = CommandType.Text;
command.CommandText = "INSERT INTO User (Gender,Name,DOB) VALUES(@Sex,@Name,@DOB)";
command.Parameters.AddWithValue("@Sex", Sex);
command.Parameters.AddWithValue("@FirstName", Name);
command.Parameters.AddWithValue("@DOB", DOB);
try
{
Con.Open();
command.ExecuteNonQuery();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
Con.Close();
}
}
protected void btnNext_Click(object sender, EventArgs e)
{
addInformationToDatabase();
}
非常感谢任何帮助
最佳答案
用户是 reserved keyword对于 SQL 服务器。要使用它,您需要将它括在方括号中
command.CommandText = "INSERT INTO [User] (Gender,Name,DOB) VALUES(@Sex,@Name,@DOB)";
如果您仍然可以更改该名称,我建议尽快进行,因为您每次使用该表时都必须记住这个问题
关于c# - 将数据写入数据库不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23314206/