我用的是ACCESS库,update涉及到两个表:表A,表B,表A需要更新的是字段a,与表B建立关联的是字段c,SQL如下
update 表A set 表A.a=(select b from 表B,表A where 表A.c=表B.c)
执行时提示"操作必须使用一个可更新的查询 "

解决方案 »

  1.   

    update 表A set 表A.a=(select b from 表B where 表A.c=表B.c)
      

  2.   

    update t_order set t_order.price=(select sell_price from t_milk where t_order.milk_id=t_milk.milk_id)
    也不行!
      

  3.   

    把你Delphi处理这段的代码也写出来看看!
      

  4.   

    ACCESS支持这样写吗?建议你到ACCESS里试一下这个语句。
      

  5.   

    可能不能这样做,=(select b from 表B where 表A.c=表B.c)返回的数据可能是一个,也可能是一个集。UPDATE a
    SET a.a = b.b
    FROM 表A a, 表B b
    WHERE b.c = a.c试看看,在Microsoft SQL Server可以。