【问题标题】:Generate Test data in a table [duplicate]在表中生成测试数据[重复]
【发布时间】:2015-04-15 19:11:44
【问题描述】:

如何快速为这个 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 次插入吗?

【问题讨论】:

  • 是的,Oracle 支持向表中插入 1000 行。您的问题确实不清楚。
  • 你能告诉我生成和插入1000行到表中的快速函数吗?
  • INSERT INTO events SELECT 1,2,SYSDATE,4,5,6,7 FROM DUAL CONNECT BY LEVEL <=1000

标签: sql oracle


【解决方案1】:

可以使用过程并在需要时调用它。

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;


SCOTT@research 16-APR-15> exec addata;

PL/SQL procedure successfully completed.

SCOTT@research 16-APR-15> select count(*) from events;

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-08
    相关资源
    最近更新 更多