作者:猫儿爱妞_591 | 来源:互联网 | 2023-06-10 13:00
在asp中運用sql server數據庫
sql語句為
sql="insert into tab(a,b) values('xxx',"&num_b&")"
其中字段 b為數字型
若在asp中 num_b為null
則執行sql語句不成功!
不要用
rs.addnew
rs("a")="xxxx"
rs("b")=num_b
rs.update
請問有沒有好一點的sql語句可以解決此問題
14 个解决方案
那你就不要让他为NULL呀,不知道你到底要实现什么!
if num_b="" then rs("b")=Null
修改表的B字段,把里改为[允许为空值]! 同意!!
判断num_b是否为null,是null就不执行insert呗!
回復: skyboy0720(飞)
上一個頁面傳過來的為空值 即num_b=""
回復: fkphp(桔子)
我問題上已經說了不能用
rs.addnew
rs("a")="xxxx"
rs("b")=num_b
rs.update
回復: hemeng(hemeng)
你說的根本是無聊之談
連接null值后sql語句都不對,數據表中字段可不可為空對它是沒有關系的
請大俠再想辦法..........急!!!!!!!!!
回復: Zygodactyous(Zygodactyous)
對於一個有很多數字型字段的表中,
如果每個都要加入判斷,程序會變得很長的
我是說有沒有最好的辦法,最好的sql語句來解決它
比如在oracle中以下問題就不會出現
oracle中
sql="insert into tab(a,b) values('xxx','')"
即使b字段是數字型,sql語句也可以正常執行,且b字段會插入null值
只要数据库字段设为允许为空,那么应该是没问题的,我都干了无数次这样的事了。要么把该
字段的默认值设为0吧。
把你的num_b的默认值改为非null(可以是0等),具体就看你是要用它来实现个什么功能了!
也可以像楼上说的那样,在设计该字段设置成“允许空值”即可。
SQL语句可以不必修改。
回復: ying1234(), ren791123(ren) ( ),zjg791015(活着便精彩)
請看清楚
sql="insert into tab(a,b) values('xxx',"&num_b&")"
1. num_b=null
2. b為numeric型
3. 插入后b為null,不能為默認值
把你的num_b的默认值改为非null(可以是0等),具体就看你是要用它来实现个什么功能了!
也可以像楼上说的那样,在设计该字段设置成“允许空值”即可。
SQL语句可以不必修改。
請看清楚后再回復
sql="insert into tab(a,b) values('xxx',"&num_b&")"
1. num_b=null
2. b為numeric型
3. 插入后b為null,不能為默認值