具有NULL值的Npgsql参数vb.net
我正在运行一个循环添加参数,当我到达一个NULL时,程序会出现。 我的发言如下所示:
mysql = "Insert into TABLE (field1) VALUES (:Col1)"
mycomm = New NpgsqlCommand (mySQL, conn)
myComm.Parameters.Add("Col" & cCnt, NpgsqlTypes.NpgsqlDbType.Double).Value = Obj.value
myComm.ExecuteNonQuery()
这工作正常,如果Obj.value不是空的,但如果Obj.value是什么都没有,我的执行语句失败。 我想只在数据库中插入一个NULL值。 有任何想法吗? 谢谢你的帮助!
要在数据库字段中插入NULL值,需要将DBNull.Value传递给参数
您可以使用VB.NET三元运算符来检查Obj本身是否为Nothing,或者如果Obj.Value不为空,并且在这种情况下(true)传递DBNull.Value
而不是Obj.Value
myComm.Parameters.Add("Col" & cCnt, NpgsqlTypes.NpgsqlDbType.Double).Value =
If(Obj Is Nothing OrElse Obj.Value Is Nothing, DBNull.Value, Obj.value))
链接地址: http://www.djcxy.com/p/42855.html