社区
Java SE
帖子详情
求:在oracle中用java自动生成主键的良方
nighthawk
2005-01-02 04:30:11
如题
...全文
130
4
打赏
收藏
求:在oracle中用java自动生成主键的良方
如题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hxzg001
2005-01-02
打赏
举报
回复
建个HashMap,以表名为键,记录该表的最大记录数。
在需要往某个表插入记录前,先从HashMap中获取该表的最大记录数。
此时有两种情况,
1、HashMap中没有对应的信息,此时需要运行select count(*) from 表名 获取最大记录数,然后加1就得到了将要插入记录的主键值,还要将这表名和加1后的记录数put到HashMap中;
2、HashMap中有对应信息,此时直接从HashMap中取得最大记录数并加1得到将要插入记录的主键值,然后再更新HashMap。
上面的方法可以得到类似于id自动递增的效果,需要注意操作时的同步。
classjava
2005-01-02
打赏
举报
回复
关注一下
pigo
2005-01-02
打赏
举报
回复
guid。有现成别人写好的东西。
lonelydavy
2005-01-02
打赏
举报
回复
public synchronized static String getKey() {
String key = " ";
long time = new Date().getTime();
if ( time == prevTime ) {
int cs = clockSequence + 1;
if ( cs > 65535 ) cs = 0;
if ( clockSequence > cs ) {
clockSequence = 0;
try {
Thread.sleep(1);
time = new Date().getTime();
}catch(InterruptedException ie) {
ie.printStackTrace();
}
}else {
clockSequence = cs;
}
}
key = time + Integer.toHexString(clockSequence);
prevTime = time;
return key;
}
oracle
插入时如何
自动生成
主键
oracle
中
自动生成
主键
方式例子如下: 1)先创建表: create table student( sno int not null, sname varchar(20), sex char(4), constraint PK_SNO primary key(sno) ); 2)创建序列: create sequence se
Oracle
自动生成
主键
&&UUID
在使用
Oracle
的时候,需要添加一个唯一的
主键
,一般使用的是36位的唯一的字符串,我们有两种方式 转自: http://hbiao68.iteye.com/blog/1493759 一、使用数据库
自动生成
的方式,自动添加唯一的ID值 ...
Java
生成唯一
主键
一般有时候我们需要生成唯一
主键
id,如果数据库是mysql我们可以使用
主键
自增,如果是
oracle
我们可以创建触发器或者序列,如果不借助数据库我们也可以在
java
层面自己生成唯一
主键
。 代码如下: /* 生成唯一
主键
...
简单方式
ORACLE
数据库
自动生成
唯一
主键
在
oracle
8i以后提供了一个生成不重复的数据的一个函数sys_guid()一共32位,生成的依据主要是时间和机器码,具有世界唯一性,类似于
java
中的UUID(都是世界唯一的)。 其应用场景:当数据库某字段设置为唯一,则可用...
oracle
数据库
自动生成
唯一
主键
的简单方法
大家都知道mysql数据库可以直接使用autoincrement关键字实现id的
自动生成
、增长,但是在
oracle
数据库,怎么实现类似的
自动生成
唯一的
主键
呢?其实很简单,例子如下: CREATE TABLE student( id varchar2(32) default...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章