设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2201|回复: 11
打印 上一主题 下一主题

[与其它组件] 为何更新一条记录变成更新全部记录,并且全部成一样的?

[复制链接]
跳转到指定楼层
1#
发表于 2006-3-9 18:39:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
为何更新一条记录变成更新全部记录,并且全部成一样的?见:





Private Sub 学历类型_AfterUpdate()


     If Me.学历类型 = "现学历" Then


          strSQL1 = "UPDATE 员工,[员工学历学位] SET [员工].现学历=[员工学历学位].学历,[员工].现学历代码=[员工学历学位].学历代码,[员工].现毕业年月=[员工学历学位].终止年月,[员工].现毕业院校=DLOOKUP('[毕业院校(简称)]','全称-院校','员工学历学位.[毕业院校(全称)] = [全称-院校].[毕业院校(全称)]),[员工].现学位=[员工学历学位].学位,[员工].现学历途径=[员工学历学位].学历途径 WHERE [员工].姓名=[员工学历学位].姓名;"


     End If


End Sub


   以上程序能运行,但其中 [员工].现毕业院校=DLOOKUP('[毕业院校(简称)]','全称-院校','员工学历学位.[毕业院校(全称)] = [全称-院校].[毕业院校(全称)])有问题,它把员工表中所有人的现毕业院校都改成了同一学校,原意是只更新符合“员工学历学位”表中学历类型为 "现学历"的人。两表中的毕业院校有简称全称之别,此句还少不了。请高手给我出招,如何修改以上程序?谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
12#
发表于 2006-3-19 17:38:00 | 只看该作者
更新查询才不会理会你的if条件呢。

你应该把“学历类型 = "现学历" ” 这一条件放在where子句中。
11#
 楼主| 发表于 2006-3-19 02:44:00 | 只看该作者
等了一周多时间了,无人帮助解决.我不会难道是大家都不会,唉!只好继续等了
10#
 楼主| 发表于 2006-3-16 02:37:00 | 只看该作者
操作过程是:

      打开“员工学历学位 子窗体”,在任意一人的"学历类型"选"现学历"后,“员工”表中的这一人的“现毕业院校”就更新为“员工学历学位 子窗体”毕业院校(全称)”的简称。

现在的问题是:

       本想只更新选定这一人的“现毕业院校”内容,可它把“员工”表中所有记录都更新成这一人的“现毕业院校”内容了。

要求:

      更新限于选定人,院校名称并是简称。

请一点通高手帮助解决,谢谢!
9#
发表于 2006-3-15 21:48:00 | 只看该作者
1\你的操作过程是如何?

2\哪一个字段想获得什么样的结果?
8#
 楼主| 发表于 2006-3-15 21:20:00 | 只看该作者
[em04]

再次请高手指点,天天看贴无结果
7#
 楼主| 发表于 2006-3-13 23:22:00 | 只看该作者
难道无人可帮?问题无人可解?
6#
 楼主| 发表于 2006-3-12 22:13:00 | 只看该作者
现附上数据库,打开"员工学历学位"窗体,在任一记录的其"学历类型"选"现学历",按理只更新员工表中相同记录的现毕业院校,结果把所有记录更新为这一记录的院校,其他字段更新都是对的.请高手帮助解决!!!!!!!!!!!!!!




盼大师们帮助解决我的难题,急!

[此贴子已经被作者于2006-3-13 15:18:19编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
5#
 楼主| 发表于 2006-3-10 19:35:00 | 只看该作者
怎么没有高手给我解决此难题,急!

4#
发表于 2006-3-9 21:19:00 | 只看该作者
如楼上所说
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 16:58 , Processed in 0.084834 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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