vb.net 绑定空值的问题
我用的是SQLserver数据库,开发软件是VB.net2005数据库有一列“建筑面积”的数据类型为float,问题是这样的:通过DataAdapter及DataBind...
我用的是SQL server数据库,开发软件是VB.net 2005
数据库有一列“建筑面积”的数据类型为float,问题是这样的:
通过DataAdapter及DataBindings控件自动绑定到一个textbox时,textbox里的值为空值时,DataAdapter.Update无法更新数据库,一定要将其设为0或输入一些数字,否则光标都没办法移开,也无法通过数据验证,导致无法更新,我想让textbox为空时,就更新数据库的值为Null,我使用过textbox.text=noting textbox.text=empty都没用,有什么办法可以解决呢??就是让textbox.text为空时更新为Null,还请各位大侠指教!
补充一下:
数据库的这列已经设为允许空值,vb.net2005的绑定数据集里该列的默认值也为DBNull 展开
数据库有一列“建筑面积”的数据类型为float,问题是这样的:
通过DataAdapter及DataBindings控件自动绑定到一个textbox时,textbox里的值为空值时,DataAdapter.Update无法更新数据库,一定要将其设为0或输入一些数字,否则光标都没办法移开,也无法通过数据验证,导致无法更新,我想让textbox为空时,就更新数据库的值为Null,我使用过textbox.text=noting textbox.text=empty都没用,有什么办法可以解决呢??就是让textbox.text为空时更新为Null,还请各位大侠指教!
补充一下:
数据库的这列已经设为允许空值,vb.net2005的绑定数据集里该列的默认值也为DBNull 展开
2个回答
展开全部
如果你要用Null值来更新数据库,那最好的办法是自己写UPDATA语句,只有这样你才能对字段使用Null值来更新。如果你有DataAdapter.Updatae来自动生成更新语句,在SQL规范里是不能用Null值来更新!也就是说自动生成的SQL语句是不会用Null值来更新,因为那样做没有任何意义!所以用自写语句的方式来更新。更新时使用SQL语句写法“ObjectValue is null"其中ObjectValue是字段名。而不再使用“=”这个字符来引用Null值,这一点需要注意。
展开全部
其中这一段:
Dim objAdap As New OleDbDataAdapter(strSql, objConn)
objConn.Close()
Dim objDSet As New DataSet
objAdap.Fill(objDSet, strSql)
'=================================
'书写有问题,应该这样写
Dim objAdap As New OleDbDataAdapter(strSql, objConn)
Dim objDSet As New DataSet
objAdap.Fill(objDSet)
objConn.Close()
你再试下,希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询