Npgsql参数中如何处理vb.net中的NULL值?
- 内容介绍
- 文章标签
- 相关推荐
本文共计243个文字,预计阅读时间需要1分钟。
我正在运行一个循环来添加参数,当我得到一个NULL值时,程序底部会抛出异常。我的代码如下:
sqlmysql=Insert into TABLE (field1) VALUES (:Col1)mycomm=New NpgsqlCommand(mysql, conn)myComm.Parameters.Add(Col, cCnt, NpgsqlTypes.Np)
我正在运行一个循环添加参数,当我得到一个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为空,我的Execute语句将失败.我想在数据库中插入一个NULL值.有任何想法吗?谢谢你的帮助!
要在数据库字段中插入NULL值,需要将 DBNull.Value传递给参数您可以使用VB.NET ternary operator来检查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))
本文共计243个文字,预计阅读时间需要1分钟。
我正在运行一个循环来添加参数,当我得到一个NULL值时,程序底部会抛出异常。我的代码如下:
sqlmysql=Insert into TABLE (field1) VALUES (:Col1)mycomm=New NpgsqlCommand(mysql, conn)myComm.Parameters.Add(Col, cCnt, NpgsqlTypes.Np)
我正在运行一个循环添加参数,当我得到一个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为空,我的Execute语句将失败.我想在数据库中插入一个NULL值.有任何想法吗?谢谢你的帮助!
要在数据库字段中插入NULL值,需要将 DBNull.Value传递给参数您可以使用VB.NET ternary operator来检查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))

