【发布时间】:2013-08-15 06:43:23
【问题描述】:
我已经多次在 sql 中插入值,但现在我遇到了以下代码的问题
protected void Button1_Click(object sender, EventArgs e)
{
string connstring = ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
con = new SqlConnection(connstring);
string name = txtName.Text;
string user = txtUser.Text;
string password = txtPwd.Text;
string email = txtEmail.Text;
long phone=Convert.ToInt64(txtPhone.Text);
string address = txtAddr.Text;
string city = txtCity.Text;
string gender = RadioButtonList1.SelectedItem.ToString();
string dob = txtDOB.Text;
string qualification = DropDownList1.SelectedItem.ToString();
string skills = CheckBoxList1.SelectedItem.ToString();
string insertstring = " insert into JobRegisteration values ("+name+","+user+","+password+","+email+","+phone+","+address+","+city+","+gender+","+dob+","+qualification+","+skills+")";
cmd = new SqlCommand(insertstring,con);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
当我通过 asp.net 页面向其中插入值时,它会出现以下错误。
Exception Details: System.Data.SqlClient.SqlException: Invalid column name 'sbip'.
Invalid column name 'tttt'.
Invalid column name 'ttt'.
The multi-part identifier "tttttt@sss.ss" could not be bound.
Invalid column name 't'.
Invalid column name 'tttt'.
Invalid column name 'Male'.
Invalid column name 'MCA'.
Invalid column name 'C#'.
其中 tttt、male mca 等是从 asp 页面传递的值。
谢谢!
【问题讨论】:
-
尝试使用sql参数。它们更安全,可以防止输入格式错误等问题,如果值有逗号或引号或类似的特殊字符,您的错误可能与此有关。您可以在此处找到示例:msdn.microsoft.com/en-us/library/…
-
尝试将字段显式放入 sql 中,即“插入 JobRegisteration(field1_for_name, ..., field_for_skills) 值 (...)”
标签: c# asp.net sql-server ado.net