当前位置:首页 » 存储配置 » oracle存储过程批量插入数据

oracle存储过程批量插入数据

发布时间: 2022-08-09 02:05:05

‘壹’ oracle存储过程提问:oracle 用存储过程将某一表里符合条件的数据查出来之后,批量插入另一张表中

先把表创建起来,然后用insert语句插入。
create or replace procere P_Insert(v_date in varchar2,v_cp varchar2) is
begin
INSERT INTO ora201301 SELECT * FROM bh
WHERE 字段名1 BETWEEN v_date||'/01' AND v_date||'/31' AND 字段名2=v_cp;
COMMIT;
end P_Insert;

‘贰’ oracle存储过程循环插数据

有以下几个步骤。
在表account中循环插入数据,id从1001到1005。createor
replace
procere
test
is--存储过程,名称为test。v_id
int;
--声明变量。begin。v_id
:=1001;
--ACCOUNT_ID从1001插到1005。while
v_id
<=1005--设置插入的次数。loop。

‘叁’ 怎么批量往oracle数据库中造大量的数据

那要看你需要什么类型的数据了。
最简单的,写一个存储过程,在里头添加一个insert,循环个 大量 次数。
如果存在其他表中有大量数据的,也可以
insert 新表 select from 其他表。
注意一下字段类型。

‘肆’ oracle 存储过程批量插入

  1. 存储过程使用游标

  2. 要插入的表最好先不要建索引

‘伍’ oracle 用存储过程将某一些表里面的数据查出来之后,批量插入另一张大表中,并判断,若有些已经存在的数据

MERGE INTO table1 p
USING table2 np
ON (p.proct_id = np.proct_id)
WHEN MATCHED THEN
UPDATE
SET p.proct_name = np.proct_name,

WHEN NOT MATCHED THEN
INSERT
VALUES (np.proct_id, np.proct_name, np.category)
备注:
table1:是要插入数据的目标表
table2 :是数据的来源表
针对你提出的需求是不用写存储过程的,上面的sql就完全可以实现;当然,你将上面的sql代码
放到过程体里面就OK了,你试下吧

‘陆’ oracle存储过程用fetch循环实现向一张表中插入不同数据

创建测试表

createtabletest
(touch_idvarchar2(20),
party_idvarchar2(20));

执行过程

declare
v_idint;
begin
v_id:=1;
whilev_id<=10--这个10设置为插入的次数
loop
insertintotestvalues('张三'||v_id,'partyid'||v_id);
v_id:=v_id+1;
endloop;
commit;
end;

结果

‘柒’ 求一段批量插入数据的存储过程 oracle

可以使用Orcel的工具来进行导入,可以在网上搜索下,
有很多这方面软件下载的,这样会很快的,
呵呵,希望能有帮助,^_^

‘捌’ oracle存储过程怎样批量插入新数据

需要生成的SQL
insert into TMP_UPSTATE_CASEKEY values('TMP0000001', 1, sysdate);

存储过程实现
create or replace procere proc_casekey_upstate
as
casekey char(14);
begin
for i in 1..10000000 loop
casekey := 'TMP'||lpad(i,7,0); -- TMP0000001
insert into TMP_UPSTATE_CASEKEY values(casekey, 1, sysdate);
end loop;
commit;
end;

begin
proc_casekey_upstate();
end;

测试发现生成一千万条数据用了14分钟左右,性能还是可以了,如果先去掉TMP_NUM_STATUS_ID的外键估计更快。
或者:
insert into TMP_UPSTATE_CASEKEY select 'TMP'||LPAD(rownum,7,0),1,sysdate from al connect by level <= 1000000;

‘玖’ oracle 用存储过程向表插入数据的问题

实际上存储过程向表中插入数据和sql执行的区别是不大的,只不过是存储过程是用loop等循环插入,之后顺序执行sql语句,不用命令行执行。

_data_4_pressure_3
is

--Result1VARCHAR2(50);
VAR_numnumber;
begin
VAR_num:=1;

while
VAR_num<1000000
LOOP
insertintorp_trans_log_day
(trans_time,
trans_province,
trans_type,
score_range,
rule_name,
trans_num)
selectto_date('2013/10/29','yyyy-mm-dd'),
round(dbms_random.value(1,300))||'省',
round(dbms_random.value(1,800))||'类型',
round(dbms_random.value(1,100))||'风险分值',
round(dbms_random.value(1,300))||'规则名称',
'1'
fromal;
commit;
VAR_num:=VAR_num+1;
<ahref="https://www..com/s?wd=end&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">end</a>loop;

<ahref="https://www..com/s?wd=end&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">end</a>insert_data_4_pressure_3;
热点内容
专网数据存储安全问题分析 发布:2024-05-04 07:33:28 浏览:129
如何获得打印机无线密码 发布:2024-05-04 06:44:59 浏览:417
上古诸神录哪里改密码 发布:2024-05-04 06:43:55 浏览:262
灌篮高手手游自动盖帽脚本 发布:2024-05-04 06:42:31 浏览:424
javajs引擎 发布:2024-05-04 06:37:33 浏览:797
javalist重复 发布:2024-05-04 06:19:27 浏览:510
max脚本管理 发布:2024-05-04 06:02:31 浏览:45
自行搭建服务器 发布:2024-05-04 06:01:12 浏览:126
h3c如何查看所有配置 发布:2024-05-04 05:26:39 浏览:493
java统计字符串中字母个数 发布:2024-05-04 05:22:58 浏览:888