快速向数据库添加300W条数据
一、表结构
CREATE TABLE "SA"."ACT_RESULT_LOG" (
"ONLINESEQID" VARCHAR2(32 BYTE) VISIBLE,
"BUSINESSID" VARCHAR2(32 BYTE) VISIBLE,
"BECIFNO" VARCHAR2(32 BYTE) VISIBLE,
"IVISRESULT" VARCHAR2(32 BYTE) VISIBLE,
"CREATEDBY" VARCHAR2(32 BYTE) VISIBLE,
"CREATEDDATE" DATE VISIBLE,
"UPDATEBY" VARCHAR2(32 BYTE) VISIBLE,
"UPDATEDDATE" DATE VISIBLE,
"RISKLEVEL" VARCHAR2(32 BYTE) VISIBLE
)
LOGGING
NOCOMPRESS
PCTFREE 10
INITRANS 1
STORAGE (
INITIAL 65536
NEXT 1048576
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
)
PARALLEL 1
NOCACHE
DISABLE ROW MOVEMENT
;
COMMENT ON COLUMN "SA"."ACT_RESULT_LOG"."ONLINESEQID" IS 'lineseID';
COMMENT ON COLUMN "SA"."ACT_RESULT_LOG"."BUSINESSID" IS '公司ID';
COMMENT ON COLUMN "SA"."ACT_RESULT_LOG"."BECIFNO" IS 'be编号';
COMMENT ON TABLE "SA"."ACT_RESULT_LOG" IS '测试数据表';
二、写入SQL
INSERT INTO act_result_log
(onlineSeqId,
businessId,
becifNo,
ivisResult,
createdBy,
createdDate,
updateBy,
updatedDate,
riskLevel)
SELECT dbms_random.string('x', 31) AS onlineSeqId, (CASE MOD(ABS(dbms_random.random), 10) WHEN 1 THEN 'UP_UM_UD' WHEN 2 THEN
'IM_UP_IU' ELSE 'DM_IK_KL' END) AS businessId, (CASE MOD(ABS(dbms_random.random), 10) WHEN 1 THEN
'10008611'
WHEN 2 THEN
'10111111'
ELSE
'6666666'
END) AS becifNo,
(CASE MOD(ABS(dbms_random.random), 10)
WHEN 1 THEN
'0'
WHEN 2 THEN
'1'
ELSE
'2'
END) AS ivisResult,
'sys' AS createdBy,
SYSDATE AS createdDate,
'sys' AS updateBy,
SYSDATE AS updatedDate,
(CASE MOD(ABS(dbms_random.random), 10)
WHEN 1 THEN
'R1'
WHEN 2 THEN
'P1'
ELSE
'O1'
END) AS riskLevel
from DUAL
connect BY LEVEL <= 3000000;
commit;
该处使用的url网络请求的数据。
总结
提示:这里对文章进行总结:
抄的这个大佬的,我这里记录一下(链接),在评论区看见的。