2007-09-10

请问我向Oracle中插入系统时间问题

关键字: java oracle

我插入时间 为  :insert into t values( sysdate,....);

DBA设计的表不含唯一主键 用了联合主键. 插入数据有时会有错,就是插入数据可能相同,那么可以让插入的时间唯一吗,请问怎么插,可以使时间不重复

 

评论
ddandyy 2007-09-14
你自己去試好了
我用的是oracle數據庫
sysdate插入的 毫秒數全為 00000
Adams1986 2007-09-14
不是精确到秒吧,就是批处理时,同时插入数据会出现问题,呵呵!不过问题解决了,新增了序列,这样查询的时候也快啊,谢谢大家
ddandyy 2007-09-13
sysdate是精確到秒的
guoq 2007-09-13
还是有个seq的主键好啊
过儿oO 2007-09-12
insert into t values( sysdate,....);
这个假设你是2个主键
就这样
insert into t values(sysdate,sysdate + interval '1' SECOND)

如果主键还多,第三个主键就加上2秒,往下推
blowfisher 2007-09-11
用时间做联合主键? 设计有问题吧?
如果时间精度是毫秒级,不是大批量插入的情况,重复的可能性不大,但是不能100%保证。

绕过这个问题其实也简单,检测到插入异常后,重复再插入一次,时间值肯定变了,不过批量环境可能影响性能。
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

Adams1986
搜索本博客
博客分类
最近加入圈子
存档
最新评论