我想在oracle数据库中插入十亿条记录
I want to insert one billion records in the oracle database
我必须在 oracle 数据库中插入十亿条记录 table。
我有 2 列。
一列是序号,一直到 1,000,000,000
第二列是一个varchar2字段...格式为abc~122~373~7777777~5367
.即第一列必须包含 3 个随机字符,后跟“~”,然后是 3 个随机数,后跟“~”,然后是 3 个随机数,后跟“~”,然后是 7 个随机数,后跟“~”,最后是 4 个随机数,后跟通过'〜'。
我需要所有记录都是唯一的。
create or replace function fn RETURN VARCHAR2 IS
label varchar2(24) := '';
BEGIN
-- abc~122~373~7777777~5367
select
chr(97 + floor(dbms_random.value*26)) || chr(97 + floor(dbms_random.value*26)) || chr(97 + floor(dbms_random.value*26))|| '~'
|| rpad(floor(dbms_random.value*123),3, '9') || '~'
|| rpad(floor(dbms_random.value*123),3, '8') || '~'
|| rpad(floor(dbms_random.value*1234567),7, '6') || '~'
|| rpad(floor(dbms_random.value*1234),4, '4') into label
from dual ;
RETURN label;
END;
您可以通过如下调用 n
次来创建 table。
create table testtable as select fn from dual connect by level <= 1000000000;
我必须在 oracle 数据库中插入十亿条记录 table。 我有 2 列。 一列是序号,一直到 1,000,000,000 第二列是一个varchar2字段...格式为abc~122~373~7777777~5367 .即第一列必须包含 3 个随机字符,后跟“~”,然后是 3 个随机数,后跟“~”,然后是 3 个随机数,后跟“~”,然后是 7 个随机数,后跟“~”,最后是 4 个随机数,后跟通过'〜'。 我需要所有记录都是唯一的。
create or replace function fn RETURN VARCHAR2 IS
label varchar2(24) := '';
BEGIN
-- abc~122~373~7777777~5367
select
chr(97 + floor(dbms_random.value*26)) || chr(97 + floor(dbms_random.value*26)) || chr(97 + floor(dbms_random.value*26))|| '~'
|| rpad(floor(dbms_random.value*123),3, '9') || '~'
|| rpad(floor(dbms_random.value*123),3, '8') || '~'
|| rpad(floor(dbms_random.value*1234567),7, '6') || '~'
|| rpad(floor(dbms_random.value*1234),4, '4') into label
from dual ;
RETURN label;
END;
您可以通过如下调用 n
次来创建 table。
create table testtable as select fn from dual connect by level <= 1000000000;