送分100分:当文本框为空时,怎么保证SQL语句的正常执行

送分100分:当文本框为空时,如何保证SQL语句的正常执行。
Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
  & " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & Text3 & " ," & trim(text4.text) &",'" & Check2 & "')"

其中:功率控制类型(字符型),允许负载功率最低(长整型),允许负载功率最高(长整型),允许负载控制启用(字符型),禁用负载功率最低(长整型),禁用负载功率最高(长整型),禁用负载控制启动(字符型)

现在的问题是:

  当TEXT3和TEXT4没有内容,即为空时,如何保证SQL的正常执行。



------解决方案--------------------
Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
& " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & iif(Text3.text = "", 0, text3.text) & " ," & iif(Text4.text = "", 0, trim(text4.text)) & ",'" & Check2 & "')"

------解决方案--------------------
如楼上,用IIF函数判断一下就可以了。
把你原语句中的 text3 替换如下
IIF(ISNULL(TEXT3) or TEXT3="","null",TEXT3)
------解决方案--------------------
Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
& " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & iif(Text3.text = "", "0", "" & text3.text &"") & " ," & iif(Text4.text = "", "0", "" & text4.text & "") & ",'" & Check2 & "')"

------解决方案--------------------
Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
& " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & val(Text3.text) & " ," & val(text4.text) &",'" & Check2 & "')"
------解决方案--------------------
如果已经做过输入检查,保证 Text3、Text4 中没有小数,按照 4楼的方法用 Val() 函数。
否则用 CLng() 强制转换为整数
VB code
... & CLng("0" & Trim(Text3)) & "," & CLng("0" & Trim(Text4)) & ...