浏览 4954 次
锁定老帖子 主题:请问我向Oracle中插入系统时间问题
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-10
我插入时间 为 :insert into t values( sysdate,....); DBA设计的表不含唯一主键 用了联合主键. 插入数据有时会有错,就是插入数据可能相同,那么可以让插入的时间唯一吗,请问怎么插,可以使时间不重复
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-11
用时间做联合主键? 设计有问题吧?
如果时间精度是毫秒级,不是大批量插入的情况,重复的可能性不大,但是不能100%保证。 绕过这个问题其实也简单,检测到插入异常后,重复再插入一次,时间值肯定变了,不过批量环境可能影响性能。 |
|
返回顶楼 | |
发表时间:2007-09-12
insert into t values( sysdate,....);
这个假设你是2个主键 就这样 insert into t values(sysdate,sysdate + interval '1' SECOND) 如果主键还多,第三个主键就加上2秒,往下推 |
|
返回顶楼 | |
发表时间:2007-09-13
还是有个seq的主键好啊
|
|
返回顶楼 | |
发表时间:2007-09-13
sysdate是精確到秒的
|
|
返回顶楼 | |
发表时间:2007-09-14
不是精确到秒吧,就是批处理时,同时插入数据会出现问题,呵呵!不过问题解决了,新增了序列,这样查询的时候也快啊,谢谢大家
|
|
返回顶楼 | |
发表时间:2007-09-14
你自己去試好了
我用的是oracle數據庫 sysdate插入的 毫秒數全為 00000 |
|
返回顶楼 | |