这条update有错吗?

wenyongjie 2013-07-05 08:49:33
一张表,

编号 上级编号 原编号

10759 0
10760 0 4807
10761 4807 4808
10762 4807 4809
。。。。

我想实现 上级编号=编号 当原编号=上级编号时

更新后的效果如下
编号 上级编号 原编号
10759 0
10760 0 4807
10761 10760 4808
10762 10760 4809
。。。。


update 表 a ,表 b set a.上级编号=b.编号 where a.上级编号 = b.原编号
或者

update 表 a,表 b set a.上级编号=b.编号 where b.编号 in(select c.编号 from 表 c where c.原编号=a.上级编号)
都不行
...全文
56 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wenyongjie 2013-07-06
知道原因了,把ACCESS压缩修复一下 update 表 a ,表 b set a.上级编号=b.编号 where a.上级编号 = b.原编号 或者 update 表 a,表 b set a.上级编号=b.编号 where b.编号 in(select c.编号 from 表 c where c.原编号=a.上级编号) 就正常得不得了了 谢谢了,
回复
wenyongjie 2013-07-06
真实语句就是这两条 update 表 a ,表 b set a.上级编号=b.编号 where a.上级编号 = b.原编号 或者 update 表 a,表 b set a.上级编号=b.编号 where b.编号 in(select c.编号 from 表 c where c.原编号=a.上级编号)
回复
ACMAIN_CHM 2013-07-06
你的真实语句用的是什么? 贴出以供分析。
回复
wenyongjie 2013-07-05
全部都是整形
回复
ACMAIN_CHM 2013-07-05
上级编号 数据类型是什么?
回复
wenyongjie 2013-07-05
不行,执行后,把上级编号的值全清空了
回复
ACMAIN_CHM 2013-07-05
update 表 set 上级编号=dlookup('编号','表','原编号='&上级编号)
回复
相关推荐
发帖
Access
创建于2007-09-28

7520

社区成员

Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
申请成为版主
帖子事件
创建了帖子
2013-07-05 08:49
社区公告
暂无公告