delphi 操作必须使用一个可更新的查询

场景:delphi 操作必须使用一个可更新的查询 郁闷,该如何解决

delphi 操作必须使用一个可更新的查询 郁闷
UpDate   Friend   Set   ClassID=39   Where   UserName= ' ' '+MyName+ ' ' '   And   FriendName= ' ' '+ThisUser+ ' ' '
可以运行


Select   ID   From   FriendClass   Where   UserName= ' ' '+MyName+ ' ' '   And   ClassName= ' ' '+MBClass+ ' ' '
也可以运行

UpDate   Friend   Set   ClassID=(Select   ID   From   FriendClass   Where   UserName= ' ' '+MyName+ ' ' '   And   ClassName= ' ' '+MBClass+ ' ' ')   Where   UserName= ' ' '+MyName+ ' ' '   And   FriendName= ' ' '+ThisUser+ ' ' '
把第一个语句里的39换成第二条语句就不行,为什么呀.


在SQL里我用该语法可以执行的.但我现在用的是ACCESS数据库,不行了.是DELPHI原因,还是ACCESS??还是什么?

------解决方案--------------------
UPDATE Friend1 a,FriendClass b SET a.ClassID = b.ID WHERE a.UserName = b.UserName and a.UserName= ' ' '+MyName+ ' ' ' and a.FriendName= ' ' '+ThisUser+ ' ' ' and b.ClassName= ' ' '+MBClass+ ' ' '
------解决方案--------------------
414