欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

快速为有数据的表添加主键

程序员文章站 2022-04-29 13:57:07
最近在工作中遇到一个问题,面对一个有上百万数据的表如何给他添加主键,有这种问题的往往是在业务初期建表是忘记了设置主键,等到系统在正式库上跑了一段时间之后,表中添加了大量的数据,这个时候想要给表添加主键时就会遇到这个问题, 面对这个问题我们可以借助oracle中的序列,代码如下: update tab ......

最近在工作中遇到一个问题,面对一个有上百万数据的表如何给他添加主键,有这种问题的往往是在业务初期建表是忘记了设置主键,等到系统在正式库上跑了一段时间之后,表中添加了大量的数据,这个时候想要给表添加主键时就会遇到这个问题,

面对这个问题我们可以借助oracle中的序列,代码如下:

update tablename d

set d.f_id = to_char(sysdate,'yyyymmdd') || lpad(sequence_name.nextval,8,'0');

'8'和'0'代表我新建的序列是8位,如果不够8位用'0'填充