我的数据库是ACCESS
sqlstr = "UPDATE " & mydate & " SET " & selltype(i) & "单月正负=ROUND(" & selltype(i) & "本月实际/" & selltype(i) & "去年同期,3)*100"
   Set rs4 = cnn4.Execute(sqlstr)
执行到这时说我“表达式中‘ROUND’函数未定义”,怎么回事,ACCESS不支持round的SQL语句吗?

解决方案 »

  1.   

    你把sqlstr的结果写出来看看
      

  2.   

    结果是这句SQL语句因为错误而不执行
      

  3.   

    Format()!sqlstr = "UPDATE " & mydate & " SET " & selltype(i) & "单月正负=Format(" & selltype(i) & "本月实际/" & selltype(i) & "去年同期,"######0.000")*100"
      

  4.   

    sqlstr = "UPDATE " & mydate & " SET " & selltype(i) & "单月正负=clng((" & selltype(i) & "本月实际/" & selltype(i) & "去年同期,3)*100)"
       Set rs4 = cnn4.Execute(sqlstr)
      

  5.   

    用convert函数,因为round是VB里面的函数
      

  6.   

    还是非常感谢wynbfqny(今无心) 的
      

  7.   

    保留一位小数??
    改成clng(x*10)/10不就行了
      

  8.   

    首先
    access是支持round函数的你好好检查一下你生成的SQL语句
    毛病一定在这里.
      

  9.   

    这是你的SQL语句
    ("---"是变量selltype(i)的值)UPDATE  SET ---单月正负=ROUND(---本月实际/---去年同期,3)*100---本月实际/---去年同期这个地方肯定有问题
      

  10.   

    xayzmb(行者)老大,该怎样做?我是菜鸟,请指教一下好吗?