C# &引用;“语法不正确”;运行SQL查询时出错

C# &引用;“语法不正确”;运行SQL查询时出错,c#,sql-server,C#,Sql Server,我试图使用这个类插入到数据库中,我能够在我的客户页面中访问这个类,但是得到了错误 “@ZipCode”附近的语法不正确 同时,我的SQL Server数据库中没有任何存储过程或触发器 public class CustomerDLL { SqlConnection cn; SqlCommand cmd; SqlDataAdapter da; DataSet ds; public CustomerDLL() { cn = new Sq

我试图使用这个类插入到数据库中,我能够在我的客户页面中访问这个类,但是得到了错误

“@ZipCode”附近的语法不正确

同时,我的SQL Server数据库中没有任何存储过程或触发器

public class CustomerDLL
{
    SqlConnection cn;
    SqlCommand cmd;
    SqlDataAdapter da;
    DataSet ds;

    public CustomerDLL()
    {
       cn = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString); 
    }

    public void Insert_Customer(string name, string address, string city, string state, int ZipCode)
    {
        cmd = new SqlCommand("Insert into Customer values (@name, @address, @city, @state, @ZipCode", cn);
        cmd.Parameters.AddWithValue("@name", name);
        cmd.Parameters.AddWithValue("@address", address);
        cmd.Parameters.AddWithValue("@city", city);
        cmd.Parameters.AddWithValue("@state", state);
        cmd.Parameters.AddWithValue("@ZipCode", Convert.ToInt32(ZipCode) ); // Line 34

        cn.Open();
        cmd.ExecuteNonQuery();
        cn.Close();
    }
}
我正在使用此方法访问客户页面中的此类

protected void btnAdd_Click(object sender, EventArgs e)
{
       // Create an instance of CustomerDll
       CustomerDLL cusdll = new CustomerDLL();

       //int zip = Convert.ToInt32(txtZip.Text);
       cusdll.Insert_Customer
            (
            txtName.Text,
            txtAddress.Text,
            txtCity.Text,
            txtState.Text,
            Convert.ToInt32(txtZip.Text)
            );

        lblMsg.Text = "Rec is inserted successfully";
        cusdll = null;
    }
我总是出错

第34行“@ZipCode”附近的语法不正确



我想你错过了@ZipCode之后的右括号。

我想你错过了@ZipCode之后的右括号。

AddWithValue需要一个字符串,请尝试取出转换。为了感谢你,我在发布之前尝试过,我的Database@SteveFerg
AddWIthValue
需要一个字符串和一个对象,因此,任何类型都适用于第二个参数。如果缺少右括号isAddWithValue,则需要一个字符串,请尝试取出转换。ToInt谢谢,我在发布之前尝试过,ZipCode在我的Database@SteveFerg
AddWIthValue
需要一个字符串和一个对象,因此,任何类型都适用于第二个参数。您缺少右括号他们已关闭,谢谢Sanjayy您的上述代码缺少右括号。连接“cn”后有右括号,但值的右括号(您的代码中缺少。谢谢Sanjay解决了它,很好的捕获..不客气..很高兴听到它解决了您的问题..它们已关闭,谢谢Sanjay您上面的代码缺少它。您的连接“cn”后有右括号,但值的右括号(您的代码中缺少。谢谢Sanjay解决了它,很好的捕获..不客气..很高兴听到它解决了您的问题。。