ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1023|回复: 5

[求助] ACCESS如何加上指定表的最大值

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-7-17 11:11 | 显示全部楼层 |阅读模式
本帖最后由 zmg920 于 2018-7-17 12:43 编辑

已经自行解决。虽然还没有人指点更好的办法。
我的办法大意就是用Dmax来获取上一表的指定字段的最大数,用这个数来update更新当前表字段A。
把这些语句写进一个模块,用的时候运行一下就可以了。
下面回帖那位估计没看懂,他的似是而非的方法没有参考价值请翻到此贴的同学不要被误导。





一下为原帖:


各位老师好,现在有这样的一个需求:

ACCESS有多个表,每个表有个单独存放顺序号的字段(A),不是objectid,objectid也有,但和它不发生关系。
目前每个表的顺序号都是在当前表内排序的(从1到最大),现在要求是整个数据库的顺序号都不重复,人肉实现就是记住上一个表的顺序号最大值,然后再把这个最大值加到当前表的顺序号上,以此类推一个接一个手动改。

这样效率不高因为库总是要变动表又很多。

请问有没有可以一次编写好语句,然后在需要更新的时候运行一下,就可以实现以上要求?只在access里实现不借助外部工具。


举例说:
有甲乙丙丁表,每个表里的顺序字段A都是从1开始计算。
要实现的是:
甲表顺序号字段A是1到9,
乙表顺序号字段A是10到45,
丙表顺序号字段A是46-87……
以此类推。
每个表顺序号的最大数不一定是多少所以无法在语句中手动指定。

TA的精华主题

TA的得分主题

发表于 2018-7-17 11:30 | 显示全部楼层
设置主键,然后自动编号,这事情就解决了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-7-17 11:54 | 显示全部楼层
活在理想的世界 发表于 2018-7-17 11:30
设置主键,然后自动编号,这事情就解决了。

表中有主键(objectid),是自动编号,每个表都是从1开始自动排。我可以设置不让id从1排,那也得手动指定一个起始数值吧,指定的这个数要求得是上一个表的最大值。但是,我有这功夫为何不直接update我要的顺序号字段,没有必要设主键又自动编号之类的吧。
如果是我理解的不对,能否请细讲一下呢,谢谢。

TA的精华主题

TA的得分主题

发表于 2018-7-17 12:15 | 显示全部楼层
zmg920 发表于 2018-7-17 11:54
表中有主键(objectid),是自动编号,每个表都是从1开始自动排。我可以设置不让id从1排,那也得手动指定 ...

那你的这个字段直接设置成自动编号不完啦,反正也是数字,自动编号在你导入Access是会自动从当前最大值开始+1计数的。

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-7-17 12:22 | 显示全部楼层
活在理想的世界 发表于 2018-7-17 12:15
那你的这个字段直接设置成自动编号不完啦,反正也是数字,自动编号在你导入Access是会自动从当前最大值开 ...

“从当前最大值开始+1”,这个当前最大值是当前表的最大值吧,而未必是另一个表的最大值。可是我要的是当前的字段从另一个表的最大值开始排。

TA的精华主题

TA的得分主题

发表于 2018-7-17 13:44 | 显示全部楼层
zmg920 发表于 2018-7-17 12:22
“从当前最大值开始+1”,这个当前最大值是当前表的最大值吧,而未必是另一个表的最大值。可是我要的是当 ...

行了,用SQL语句抓取一下,然后循环的时候把开始的变量变一下用INSERT INTO语句插入就行了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-30 20:37 , Processed in 0.044851 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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