社区
数据库(包含打印,安装,报表)
帖子详情
在ADO访问Access数据库时,多个用户怎样同时取得一个唯一的编号?
xinlnix
2001-05-22 12:52:00
本人在写程序时遇到这样一个问题:有一个数据表IDNumber,所有用户必须从该表中取得唯一的编号,存在共享冲突问题,用于其提货单中。我在ADO中该怎么办才能实现呢?
...全文
135
10
打赏
收藏
在ADO访问Access数据库时,多个用户怎样同时取得一个唯一的编号?
本人在写程序时遇到这样一个问题:有一个数据表IDNumber,所有用户必须从该表中取得唯一的编号,存在共享冲突问题,用于其提货单中。我在ADO中该怎么办才能实现呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
progame
2001-05-27
打赏
举报
回复
临时表并不指临时生成的表,你可以新建一个表。
xinlnix
2001-05-27
打赏
举报
回复
我这几天不在网上,很对不起,现在我给分了,但我感觉progame的方法对我不一定好用。还有更好的办法吗?为什么要用临时表呢?我用的可是ACCESS,不是SQL Server!!!!
progame
2001-05-25
打赏
举报
回复
fffffffffffffffffffffffffffffffffffffffffffffffffffff
51fffffffffffffffffffffffffffffffffffffffffffffffffff
progame
2001-05-24
打赏
举报
回复
怎么还不给分,我口水都流出来了
progame
2001-05-23
打赏
举报
回复
哈哈,碰到我啦,我的方法是建立一个临时表,期初将最大的编号加1存入表中,然后当有用户制单时,读取最大号,并新增一个编号,为此编号加1,依此类推,当要保存时,锁住表,读出最小号使用,再删除此最小号,释放表锁定,这样的话绝对不会错的,如果有用户非法死机的话,再重新生成此临时表。我就是这样做的,目前为此运行良好,可惜我的SQL SERVER 的行锁定只能牺牲一下了,变成表锁定,但锁定的时间也不会很长,就保存数据的时候,然后马上释放。
Wonny
2001-05-23
打赏
举报
回复
加一个表,用于记录上一编号是什么。这样就不会重复了。
cqq_chen
2001-05-23
打赏
举报
回复
最好在有人进入时判断该ID是否在用,如果有用不让进入。
gzzmcc
2001-05-22
打赏
举报
回复
可有两种方法:
如果你对ID号要求不高,可用ACESS的自动增量功能,在ACESS表设计中有此一项。
如果你对ID号有格式要求,可以将ID号字段设为主键或唯一值键,这样ID号你就可以自己生成。如果真是不好彩,几个用户在同一时刻增加记录(这种情况很少)数据库也不会接受,当然程序要进行错误处理,提示没有成功保存的用户再进行保存或重新生成ID号再由程序自动保存,总不能连续发生并发事件吧。至少我在一百用户的情况下还很少遇到。最重要是保证数据的一致性。
tom255
2001-05-22
打赏
举报
回复
设置为脏读即可,给分。
shuyi
2001-05-22
打赏
举报
回复
在此表中再加一个标志字段,当取得id时候把此位置1,别人只有在找到标志位为0时,才能读取,否则movenext。
iotthingsgraph-0.9.1-alpha.jar
iotthingsgraph-0.9.1-alpha.jar
毕设&课设:旅客行程智能推荐系统.zip
经导师指导并认可通过的大作业设计项目源码,适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计,作为“参考资料”使用。
sagemakeredge-jvm-1.3.17.jar
sagemakeredge-jvm-1.3.17.jar
migrationhubconfig-jvm-1.3.57.jar
migrationhubconfig-jvm-1.3.57.jar
毕设&课设:
一个
合同智能审查系统.zip
经导师指导并认可通过的大作业设计项目源码,适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计,作为“参考资料”使用。
数据库(包含打印,安装,报表)
1,217
社区成员
55,952
社区内容
发帖
与我相关
我的任务
数据库(包含打印,安装,报表)
VB 数据库(包含打印,安装,报表)
复制链接
扫一扫
分享
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章