如何防止多个人同时向access(或mysql)数据库添加记录时,产生重复号码问题。程序是asp语言.
添加记录前,asp先计算某字段最大值,然后用最大值+1添加记录,当两个人同时访问程序时,最大值+1是一样的,就会产生相同的值,但需要该字段值是唯一的。代码:rs.open...
添加记录前,asp先计算某字段最大值,然后用最大值+1添加记录,当两个人同时访问程序时,最大值+1是一样的,就会产生相同的值,但需要该字段值是唯一的。代码:
rs.open "select sid from s_table order by sid desc",conn,1,1
s_max=rs("sid")‘获取最大值
rs.close
conn.execute "insert into s_table (sid,sname,stype) values (s_max+1,'张三','新用户')"
当两个用户同时访问该程序时,会产生两个同样的sid,这是我不希望的,有什么好办法? 展开
rs.open "select sid from s_table order by sid desc",conn,1,1
s_max=rs("sid")‘获取最大值
rs.close
conn.execute "insert into s_table (sid,sname,stype) values (s_max+1,'张三','新用户')"
当两个用户同时访问该程序时,会产生两个同样的sid,这是我不希望的,有什么好办法? 展开
展开全部
access中,你可以把sid字段设成自动编号的呀,不需要你填的,每添加一条新的记录,sid就会自动+1的。sqlserver也有类似的,但是更复杂一些。mysql没接触过,应该也是类似的吧。
“insert into s_table (sid,sname,stype) values (s_max+1,'张三','新用户')”这个语句也不需要添加sid字段了,只要写成insert into s_table (sname,stype) values ('张三','新用户')。sid自己会写上去,自动+1的
“insert into s_table (sid,sname,stype) values (s_max+1,'张三','新用户')”这个语句也不需要添加sid字段了,只要写成insert into s_table (sname,stype) values ('张三','新用户')。sid自己会写上去,自动+1的
2011-07-07
展开全部
sid是自动增加的
不是你自己往里面写的
这样才有唯一性
不是你自己往里面写的
这样才有唯一性
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把sid设置为自增字段,写数据库记录时,不能写sid字段,就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据库里面sid字段设置成自动编号,然后这样写
conn.execute "insert into s_table (sid,sname,stype) values ('张三','新用户')"
就可以了,sid将会自动加1
conn.execute "insert into s_table (sid,sname,stype) values ('张三','新用户')"
就可以了,sid将会自动加1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询