各位高手,我遇到一个很奇怪的问题。
我在VB6中遇到了一个“类型不匹配” iQ = iQ - CInt(Trim(Text1.Text))
    strType = ListView2.SelectedItem.Text
    strName = ListView2.SelectedItem.SubItems(1)
    iDj = ListView2.SelectedItem.SubItems(4)
    sqlstr = "UPDATE 化装品表  SET 库存" + iQ + " WHERE  类型='" +   
             strType + "' AND 名称='" + strName + "' AND 单价=100"
   ...
就是这个sqlstr 语句出了问题,运行时系统出错提示“类型不匹配”!这是为什么?我的数据库是ACCESS-XP,“库存”字段是“数字”型。

解决方案 »

  1.   

    sqlstr = "UPDATE 化装品表  SET 库存=" + iQ + " WHERE  类型='" +   
                 strType + "' AND 名称='" + strName + "' AND 单价=100"
      
    库存后加 =
      

  2.   

    sqlstr = "UPDATE 化装品表  SET 库存=" + iQ +  " WHERE  类型='" +   
                 strType + "' AND 名称='" + strName + "' AND 单价=100"
      

  3.   

    sqlstr = "UPDATE 化装品表  SET 库存=" & iQ & " WHERE  类型='" &   
                 strType & "' AND 名称='" & strName + "' AND 单价=100"
      

  4.   

    各位高手,其实我开始写错了,我的确用了:
    sqlstr = "UPDATE 化装品表  SET 库存=" + iQ + " WHERE  类型='" +   
                 strType + "' AND 名称='" + strName + "' AND 单价=100"
    就是这个sqlstr 语句出了问题,运行时系统出错提示“类型不匹配”!这是为什么?