一个关于c#编号的问题

goodb515344oy 2008-10-17 04:30:46
我在form1里通过按钮button1给数据库access里的user表添加字段,这时编号原来的编号+1,单击button2将弹出form2,form2里的按钮tianjia也是可以向数据库access里的user表添加字段(按照原来user表里的编号+1)。我要怎么写添加编号的代码,才能让两个按钮都给user表按照编号+1添加字段。而不会起冲突。
...全文
98 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlb789 2008-10-18
  • 打赏
  • 举报
回复
declare @i int
select @i = max(ID)+1 FROM 表
goodb515344oy 2008-10-18
  • 打赏
  • 举报
回复
string sql="select max(ID)+1 FROM 表"
要怎么把ID中的数字传输给一个局部变量bianhao?
lijikun003 2008-10-17
  • 打赏
  • 举报
回复






select max(ID)+1 FROM 表



这样完全没有问题,朋友,这里的ID不是自增主键

mjjzg 2008-10-17
  • 打赏
  • 举报
回复
照你说的,也根本是不会有冲突的,你在点击bottun的时候,数据库就相当于更新了一次,再点击时已经是更新后的数据库了
lovehongyun 2008-10-17
  • 打赏
  • 举报
回复
如果是主键的话最好用自动增长的.别手动加.手动加会有问题的.

考虑这个id是别的表外键.而这个id的最后一个数被删除的情况
lijikun003 2008-10-17
  • 打赏
  • 举报
回复
你可以不设置主键
直接查找最后一个ID

select max(ID)+1 FROM 表


每次都是获得的最大的ID+1,这样总可以了吧???这样就算并发,你直接锁住,况且并发的几率0.00001% 所以根本不需要理会。。放心,这样做很合适。
goodb515344oy 2008-10-17
  • 打赏
  • 举报
回复
设置ID为主键的话,如果删除掉一些数据,重新插入的数据ID就会在原来的编号上继续加上去,而不会清零后再加。
lijikun003 2008-10-17
  • 打赏
  • 举报
回复
对头,以上的描述都很正解,不描述了,帮助其他人去了。、
guanmingle 2008-10-17
  • 打赏
  • 举报
回复
是模式,非模式吗?
hao1hao2hao3 2008-10-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 JeffChung 的回复:]
你在按钮的时候才去取最后的编号并且加1,这样不会有冲突的。

如果怕并发的问题就用transaction事务,加锁
[/Quote]

up。
消失的尘芥 2008-10-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 enihs 的回复:]
将表的ID设为主键 自增长,插入的时候不写主键的插入
[/Quote]
插入时不要写主见插入
enihs 2008-10-17
  • 打赏
  • 举报
回复
将表的ID设为主键 自增长,插入的时候不写主键的插入
JeffChung 2008-10-17
  • 打赏
  • 举报
回复
你在按钮的时候才去取最后的编号并且加1,这样不会有冲突的。

如果怕并发的问题就用transaction事务,加锁
guoyi_ggg 2008-10-17
  • 打赏
  • 举报
回复
感觉描述不是太清楚..
优途科技 2008-10-17
  • 打赏
  • 举报
回复
顶下。

110,568

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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