我把text1.text text2.text text3.text text4.text的内容输入后就把值加在
SQL="insert into libuary(ID,Name,Age,Address) values( & text1 & text2 & text3 & text4)"
如果我只想把text1.text text3.text的内容添加进去,而text2.text text4.text为空;如果用上一条Code就出现语法错误。
意思就是 我准许有 插入的字段为空,这个问题怎么解决!?

解决方案 »

  1.   

    SQL="insert into libuary(ID,Name,Age,Address) values( " & val(text1) &",'" & text2 &"'," & iif(text3="","null",val(text3)) &",'" & text4 &"')"以上假定ID、Age为数值型,Name、Address为字符型
      

  2.   

    strSQLStmt = _
        "INSERT INTO library(" & vbCrLf & _
        "  ID," & vbCrLf & _
        "  NAME," & vbCrLf & _
        "  AGE," & vbCrLf & _
        "  ADDRESS)" & vbCrLf & _
        "VALUES(" & vbCrLf & _
        "  @ID," & vbCrLf & _
        "  @NAME," & vbCrlf & _
        "  @AGE," & vbCrLf & _
        "  @ADDRESS)"
    strSQLStmt=Replace(strSQLStmt,"@ID",txtID)
    strSQLStmt=Replace(strSQLStmt,"@NAME",txtName)
    strSQLStmt=Replace(strSQLStmt,"@AGE",IIf(Len(txtAge)=0,"NULL",txtAge))
    strSQLStmt=Replace(strSQLStmt,"@ADDRESS",IIf(Len(txtAddress)=0,"NULL",txtAddress)