设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 644|回复: 2
打印 上一主题 下一主题

[Access本身] [求助]新手更新问题,多条记录顺序更新

[复制链接]
跳转到指定楼层
1#
发表于 2007-3-30 17:18:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有两张表,一张表叫wage,用来记录所有员工的所有历史工资和最新工资记录(包括先前所有旧的和现在新的),子窗体内以ID降序排序;另一张表叫new_wage,只用来记录当前最新的工资记录。
现在,需要以工号为依据,对new_wage表的记录进行更新。也就是说,要将wage表内的多条记录更新到new_wage表内的单条记录上。语句如下:
DoCmd.RunSQL ("UPDATE wage INNER JOIN new_wage ON wage.工号 = new_wage.工号 SET new_wage.职称类别 = [wage].[职称类别], new_wage.任职年限 = [wage].[任职年限], new_wage.套改年限 = [wage].[套改年限], new_wage.薪级 = [wage].[薪级], new_wage.岗位工资 = [wage].[岗位工资], new_wage.薪级工资 = [wage].[薪级工资], new_wage.工资 = [wage].[工资], new_wage.年度 = [wage].[年度] WHERE [new_wage].[工号]='" & 工号 & "';")


问题是,测试了前7条记录,前3条记录能顺利更新,并将wage表中最后一条记录(也就是最新工资)更新到new_wage表中[子窗体内,将wage表记录按照ID降序排列]。但是,后四条记录更新后,却将第一条记录(最早的工资记录)更新到new_wage表中。

请问为什么?如何解决?谢谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
3#
 楼主| 发表于 2007-3-30 19:44:00 | 只看该作者
问题已经解决~
2#
 楼主| 发表于 2007-3-30 17:31:00 | 只看该作者
wage表中有记录
ID 工号 姓名 职称类别 岗位工资 任职年限 套改年限 薪级 薪级工资 工资 标志 年度
1   101 AAA 副高级  930  8  33  32 767  1697  2007
258 101 AAA 副高级  930  9  34  33 799  1729  2008
259 101 AAA 副高级  930  10  35  34 834  1764  2009

要求更新new_wage表记录为
工号 姓名 职称类别 任职时间 任职年限 套改年限 薪级 岗位工资 薪级工资 工资 标志 年度
101 AAA 副高级  1999-12-01 10  35  34 930  834  1764  2009

问题是测试了7个数据记录,前3条记录,能够实现new_wage表记录更新成2009年度的记录了
而后四条记录new_wage表记录始终更新成2007年度的第一条记录



谢谢大家,怎么解决阿
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-24 01:26 , Processed in 0.097572 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表