sql = "UPDATE 职工资料 SET 月提成=(SELECT SUM(合计) FROM 工作记录 WHERE 工作记录.代码=职工资料.代码 AND Month(日期)" & "=" & Month(Date) & "-" & "1" & ")"
  cn.Execute sql
实时错误‘-2147467259(80004005)’:
操作必须使用一个可更新的查询。

解决方案 »

  1.   

    SQL = "UPDATE 职工资料" _
        & " SET 月提成=(" _
                    & " SELECT SUM(合计) FROM 工作记录" _
                    & " WHERE 工作记录.代码=职工资料.代码 AND Month(日期)" & "=" & Month(Date) - 1 _
                    & ")"
      

  2.   

    查询分析器里:
    服务器: 消息 170,级别 15,状态 1,行 1
    第 1 行: '1' 附近有语法错误。
    to yoki(小马哥) 
    我试了!一样是:
    实时错误‘-2147467259(80004005)’:
    操作必须使用一个可更新的查询。
    怎样呀!?急呀!?
      

  3.   

    不知道你的Date是什么东西!如果要的是时间应该是getdate()吧,并且date是保留字啊,要加"[]"的.
      

  4.   

    '试试这个.
    sql="UPDATE 职工资料 SET 月提成=b.合计 from 职工资料 a join(select 代码,合计=sum(合计) from 工作记录 where month(日期)=" & month(date)-1 & ") b on a.代码=b.代码"
      

  5.   

    这是在vb里的代码
    查询分析器哪里date函数?改成getdate()
    UPDATE 职工资料 _
    SET 月提成=(SELECT SUM(合计) FROM 工作记录 
               WHERE 工作记录.代码=职工资料.代码 AND Month(日期)=Month(getDate()) - 1)
      

  6.   

    sql = "UPDATE 职工资料 SET 月提成=(SELECT SUM(合计) FROM 工作记录 WHERE 工作记录.代码=职工资料.代码 AND Month(日期)" & "=" & Month(getDate()) & "-" & "1" & ")"
      

  7.   

    sql = "UPDATE 职工资料 SET 月提成=(SELECT SUM(合计) FROM 工作记录 WHERE 工作记录.代码=职工资料.代码 AND Month(日期)='" & Month(getDate()) & "' and day(日期)
    ='"&day(getdate())&"' )"
      

  8.   

    SUM(合计) as total,这里给个名称试一下
      

  9.   

    我用的是Access2000,是不是在Access2000中不可以用子查询语句啊?
    我用SQL就可以用上面这语句为什么?
      

  10.   

    Access2000 日期 是用#
    Month(日期)=#" & Month(getDate()) & "#