0421Oracle数据填充

本文介绍了一种在Oracle数据库中快速扩充表数据的方法,通过复制原有数据并修改主键来增加记录数量,适用于需要大量测试数据的场景。提供了一个具体的PL/SQL脚本实例,演示如何将一张初始有21行记录的表扩展到50000条以上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.问题域描述:当前有一张新闻表,主键为fd_objectid varchar2(30),有21行记录,主键值范围(1-21)。要求填充本表数据到 50000条以上,并且内容要符合系统要求。

2.解决方案:复制本表中的数据,修改fd_objectid后(防止主键冲突)插入到表中。

3.以下为oracle的运行脚本:

Declare
i int := 0;
N int :=11;
_range int :=100;
Begin
while  (i < N) loop
insert into b_xxfb_yujxw(F_VC_BIAOT,f_vc_laiy,f_vc_zuoz,f_vc_riq,fd_objectid,f_nb_wfid,f_nb_niannbh,f_lb_neir)
select F_VC_BIAOT,f_vc_laiy,f_vc_zuoz,f_vc_riq,
       to_char(to_number(fd_objectid)+POWER(2,i)*_range),
       f_nb_wfid,f_nb_niannbh,f_lb_neir      
       from b_xxfb_yujxw;
i := i + 1;
End loop;
End;

4. 执行后表的记录数=2^(N+1)*(原始表记录数)

5.考虑也可以使用序列来实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值