我是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();
}
答案 0 :(得分:0)
您需要为列添加null
。
查询语法:
ALTER TABLE tableName ALTER COLUMN columnName dataType null
示例代码:
ALTER TABLE Master ALTER COLUMN Style varchar(50) null
这些只是示例值,用原始值替换columnName
和data type
。