我要向sql数据库表中插入数据,其中有一个长度(long)字段,它的数据类型是numeric,允许空,我这样写的语句:sqlDataAdapter1.InsertCommand.CommandText = "insert into 表名(long) values("+ long.Text +")";
这样写不能插入空值,我想是不是应该在long.Text这做一下判断啊?我该如何做?
请各位ggjj们指导一下小妹,非常感谢!
这样写不能插入空值,我想是不是应该在long.Text这做一下判断啊?我该如何做?
请各位ggjj们指导一下小妹,非常感谢!
insert into 表名(long) values(@long)";
InsertCommand.Parameters.Add("@long", SqlDbType.numeric, 这里是字段long的长度, "long");
InsertCommand.Parameters["@long"].Value = long.Text.Trim();
if(long.Text.Trim()!="")
{
init = Convert.ToInt64(long.Text);
}
然后把SQL中的long.Text改为init就可以了。
数据类型最好不要使用null,宁愿使用''。2.设置字段的默认值。
这是什么原因?
"insert into 表名(long)(Field1, Field2,...,"
+ ( long.Text != "" ? "YourLongField,":"" )
+ "...,Fieldn )"
+ "values( FieldValue1,FieldValue2,...,"
+ ( long.Text != "" ? ( long.Text +","):"" )
+ "..., FieldValuesn );
把需要添加的字段名要表明,然后各个字段的值相应给出,从中判断long.Text是否要加入。