2015-04-15 151 views
-3

如何快速生成此Oracle表的數據?在表中生成測試數據

Table EVENTS 

EVENTID NUMBER(38,0) 
AGENTID NUMBER(38,0) 
EVENTDATE DATE 
CPU NUMBER(38,0) 
RAM NUMBER 
HDD NUMBER 
NETWORKUP NUMBER 
NETWORKDOWN NUMBER 

例如,我可以使用Oracle函數執行1000個插入嗎?

+2

是的,Oracle支持在表中插入1000行。你的問題真的不清楚。 –

+0

你能告訴我快速生成表格並插入1000行的功能嗎? –

+2

INSERT INTO events SELECT 1,2,SYSDATE,4,5,6,7 FROM DUAL CONNECT BY LEVEL <= 1000' – krokodilko

回答

0

可以使用一個過程,並在需要時調用它。

create or replace procedure addata is 
begin 
for i in 1..1000 loop 

insert into events (EVENTID, 
AGENTID , 
EVENTDATE, 
CPU, 
RAM , 
HDD , 
NETWORKUP, 
NETWORKDOWN) values 

(i, 
i+1, 
sysdate, 
i+3, 
i+4, 
i+5, 
i+6, 
i+7) ; 

end loop; 
commit; 
end; 


[email protected] 16-APR-15> exec addata; 

PL/SQL procedure successfully completed. 

[email protected] 16-APR-15> select count(*) from events; 

    COUNT(*) 
---------- 
     1000