当前位置: 代码迷 >> J2EE >> 新手求解,数据库有主键id,没设置自增长的话,后台insert插入数据如何给id值
  详细解决方案

新手求解,数据库有主键id,没设置自增长的话,后台insert插入数据如何给id值

热度:54   发布时间:2016-04-17 23:05:56.0
新手求解,数据库有主键id,没设置自增长的话,后台insert插入数据怎么给id值?
数据库有主键id,没设置自增长,我在java代码里面插入数据主键不能为null,求解一般公司项目都是怎么样给主键id值的?取最大值加1么?
------解决思路----------------------
一般公司没有什么特殊要求都会设置主键id为自增的,如果不想自增也可以使用java的uuid!
------解决思路----------------------
生成uuid即可
------解决思路----------------------
引用:
Quote: 引用:

一般公司没有什么特殊要求都会设置主键id为自增的,如果不想自增也可以使用java的uuid!


公司一般设置为自增长么?因为我试了下,自增我插入1000条数据,删除的话再插入就从1001开始了,这样不要紧么?


不要紧、你要是想从1开始的话可以吧自增初始化一下。初始化语句百度一下“设置主键重新从1开始”
------解决思路----------------------
我做了这么多年企业级开发没有见过有用自增主键的。
多数情况下是两种做法:
uuid是一种做法
还有一种就是把业务意义上不会重复的作为主键
各有优缺点,,uuid的优点是生成主键容易,缺点是以后从数据库查询会不大方便
------解决思路----------------------
UUID 还是有缺陷的,没有啥业务含义,我们用做主键的 都是
iD:年月日时分秒+6位自增数    ,这样的ID长度为20,且具有业务含义

我之前写了一个生成主键ID的工具类:生成ID模板
  相关解决方案