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

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并发的问题,说要给表加锁,还有事务什么的一大堆的,搞不懂了,到底该怎么弄防止并发啊
...全文
43 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hzai204 2008-03-15
郁闷啊
回复
buzhihuigai 2008-03-15
晕!楼主看不懂一楼的意思。。。。。。。。。。。。。。。。。。。。。。。。。
回复
wangwei1979 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
回复
相关推荐
发帖
VB基础类
创建于2007-09-28

7489

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2008-03-14 08:36
社区公告
暂无公告