C#插入查询

时间:2014-07-22 08:52:16

标签: c# sql

我是C#的初学者。下面的insert查询无法在我的数据库中插入值,我的代码有什么问题。

此代码是否允许在我的数据库中使用Null值?如果是的话,

如何定义Null值无法存储在我的数据库中?

public void Button2_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection("connection string");
    con.Open();
    SqlCommand cmnd = con.CreateCommand();
    cmnd.CommandType = CommandType.Text;

    cmnd.CommandText = "SELECT * FROM Master WHERE Stockno = "+textBox1.Text+"";
    SqlDataReader dReader;
    dReader = cmnd.ExecuteReader();

    if (dReader.HasRows)
    {
        MessageBox.Show("Stackno Already Exists!!");
    }
    else
    {
        dReader.Close(); 
        try
        {
            SqlCommand sc = new SqlCommand("insert into Master Values(@Stockno,@Cost,@MRP,@[Item Desc],@Brand,@Style,@Shade,@Size");
            string s,c,m,i,p,b,st,sh,si; 
            s = textBox1.Text ;
            c = textBox2.Text  ;
            m = textBox3.Text  ;
            i = textBox4.Text  ;
            p = textBox5.Text ;
            b = textBox6.Text; 
            st= textBox7.Text; 
            sh= textBox8.Text; 
            si= textBox9.Text; 
            sc.Parameters.Add("@Stockno", s);  
            sc.Parameters.Add("@Stockno", c);
            sc.Parameters.Add("@Cost", m);
            sc.Parameters.Add("@MRP", i);
            sc.Parameters.Add("@[Item Desc]", p);
            sc.Parameters.Add("@Brand", b);
            sc.Parameters.Add("@Style", st);
            sc.Parameters.Add("@Shade", sh);
            sc.Parameters.Add("@Size", si);

            sc.Connection = con;           

            sc.ExecuteNonQuery();
            MessageBox.Show("saved");
        }
        catch (SqlException )
        {           
            MessageBox.Show("Enter full Details");  
        }
    }
    con.Close();    
}

1 个答案:

答案 0 :(得分:0)

您需要为列添加null

查询语法:

ALTER TABLE tableName ALTER COLUMN columnName dataType null

示例代码:

ALTER TABLE Master ALTER COLUMN Style varchar(50) null

这些只是示例值,用原始值替换columnNamedata type