请教JSP servlet中控制数据库自动生成编号的问题

greiver 2007-05-04 11:04:51
我现在想实现的东西是:
填写新注册一个用户, 然后点注册, 数据库中加入这个新注册的用户填写的信息, 并在数据库的同一个表(该表有一个用户编号字段)中自动生成一个唯一的用户编号(已有的基础上自动加1), 然后返回这个编号到前台, 让用户能知道自己的编号是多少。

现在的问题是:
servlet中应该怎么写才能达到上述效果?

现在的想法是:
点击注册后, servlet中先获得数据库中用户编号最大数, 让新的用户编号为最大数+1, 然后再在servlet中把从前台获得的填写数据和这个新的用户编号一起写入数据库。这样不知可行否?

另外, 在获得用户编号最大数的方法上, 有想到直接获取该表中数据的行数, 然后加1实现。但这样的话,如果中间删除了数据(比如有编号1、2、3, 删除了2),再用获得行数的方法就会出现两个编号为3的用户编号了

请各位帮忙……谢谢!!

我用的数据库是access……
...全文
371 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
OracleRoob 2007-05-04
  • 打赏
  • 举报
回复
先获得数据库中用户编号最大数, 让新的用户编号为最大数+1,方法可行。

表中用户编号建立唯一约束,如果因为并发导致编号重复时,让用户重试即可。

至于,如何在servlet中实现,到相应的开发版块去问吧!
greiver 2007-05-04
  • 打赏
  • 举报
回复
问题解决。谢谢回帖
greiver 2007-05-04
  • 打赏
  • 举报
回复
不行……
我用 "select max(ID) from userinfo";
报错
java.sql.SQLException: Column not found
greiver 2007-05-04
  • 打赏
  • 举报
回复
感谢! 我试下先~
OracleRoob 2007-05-04
  • 打赏
  • 举报
回复
--用记录集打开,获取最大的用户编号

select max(用户编号) from 表名
greiver 2007-05-04
  • 打赏
  • 举报
回复
谢谢回帖
应该到哪个版块呢?
我access和JSP版都发了……

不过这个语句不是就是sql的选择语句么?

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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