难,并发问题,怎么办法啊………………

hzai204 2008-03-14 08:36:25
郁闷啊………………
首先从一个表里获得最大号
select max(djh) as djh from A
然后将获得的最大号加1,插入到B表里
insert into B(djh) values(@djh +1)

原先在单机版的时候都没出现问题,升到网络版,多用户操作时候经常发生并发的问题,就是往B里插入了重复记录
查了很多资料说是SQL并发的问题,说要给表加锁,还有事务什么的一大堆的,搞不懂了,到底该怎么弄防止并发啊
...全文
82 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzai204 2008-03-15
  • 打赏
  • 举报
回复
郁闷啊
buzhihuigai 2008-03-15
  • 打赏
  • 举报
回复
晕!楼主看不懂一楼的意思。。。。。。。。。。。。。。。。。。。。。。。。。
「已注销」 2008-03-15
  • 打赏
  • 举报
回复
在B上对djh字段加唯一索引,在客户端来捕捉重复错误。
还有不是很明白你的意思
hzai204 2008-03-14
  • 打赏
  • 举报
回复
高手呢
hzai204 2008-03-14
  • 打赏
  • 举报
回复
是不是误解我的意思了呢,直接调用什么用?
aohan 2008-03-14
  • 打赏
  • 举报
回复
调用时直接
insert into B(djh)
select max(djh)+1 from A

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧