0

我正在使用 VS 2008 和 SQL Server 2005。我正在使用下面的代码向表中插入一行。

表是TestTable,并且它只有一列Name( varchar(50))。

我是 C# 编码的新手。

protected void Button1_Click(object sender, EventArgs e)
{
    try
    {
        string sql = "insert into TestTable(Name) values (vinayak)";
        using (SqlConnection conn = new SqlConnection("Data Source=VINAYAK-PC;Initial Catalog=TestTable;Integrated Security=True;"))
        {
            conn.Open();
            using (SqlCommand cmd = new SqlCommand(sql, conn))
            {
                cmd.Parameters.AddWithValue("@Name", "test"); // assign value to parameter 
                cmd.ExecuteNonQuery();
            }
        }
    }
    catch (SqlException ex)
    {
        string msg = "Insert Error:";
        msg += ex.Message;
    }
}
4

2 回答 2

2

您没有在 SQL 语句中包含参数。

将 vinayak 更改为 @Name。

于 2012-11-03T11:23:28.930 回答
0

在表“TestTable”中,如果您只有一列“Name”并且您想在其中插入值“vinayak”,则将 vinayak 包含在单引号中并且您不需要执行以下语句 - :

cmd.Parameters.AddWithValue("@Name", "test");

如果要在 sql 命令中使用参数,请确保在 sql 命令中的“name”之前添加“@”前缀。

看到这个链接

于 2012-11-03T11:26:55.607 回答