"数据库表定义错误"的原因是什么?错误

时间:2012-06-21 04:27:49

标签: c# asp.net c#-4.0

这是我编程的第一步。请求你的帮助。我看过youtube video&写小程序,他写的确切方式..他没有错误。但我得到了错误。我只是通过了文本框值数据库。(错误是数据库表定义错误)。在我的表中,我用于此字段的是BBMgrID nvarchar(50)NOT NULL

SqlConnection con = new SqlConnection("Data Source=spilap;Initial Catalog=spiDB;User ID=sa;Password=sa123");

    protected void btn_submit_Click(object sender, EventArgs e)
    {
        con.Open();
        SqlCommand cmd = new SqlCommand("Insert into tbl_BBmgr values('" + TextBox1.Text+"')",con);
        cmd.ExecuteNonQuery();
    }

3 个答案:

答案 0 :(得分:2)

试试这个:

SqlCommand cmd = new SqlCommand("Insert [TableName] ([ColumnName]) Values(@A)", con);
            cmd.Parameters.AddWithValue("@A", TextBox1.text);
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();

更新:

SqlCommand cmd = new SqlCommand("Insert [TableName] ([Column1],[Column2],[Column3]) Values(@A,@B,@C)", con);
        cmd.Parameters.AddWithValue("@A", TextBox1.text);
        cmd.Parameters.AddWithValue("@B", TextBox2.text);
        cmd.Parameters.AddWithValue("@C", TextBox3.text);
        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();

答案 1 :(得分:0)

你应该这样写: 插入tbl_BBmgr(BBMgrID)值('“+ TextBox1.Text +”')

答案 2 :(得分:0)

如果你说你在数据库表中有5个字段,你需要明确指定你想要值的列:

SqlCommand cmd = new SqlCommand("Insert into tbl_BBmgr (BBMgrID) values('" + TextBox1.Text+"')",con);

编辑:现在和将来,为了确保您向相应字段发送正确的值,始终建议您在INSERT语句中以以下格式指定列:

INSERT INTO Name_Of_Table ([Column1], [Column2], [Column3], ...) VALUES ([Value_For_Column1], [Value_For_Column2], [Value_For_Column3], ...)