需要Oracle绑定插入示例

需要Oracle绑定插入示例,oracle,plsql,Oracle,Plsql,我需要在oracle中创建一个使用绑定变量的脚本 提供了最多的信息,但我无法获得正确的语法 insert into history_text (itemid,clock,ns,value) values (:1,:2,:3,:4) 102857,1568735807,994374837,'maint' 102884,1568735807,996865154,'dev' 64782,1568735808,64131520,'Linux' 468595,1568735808,90767673,'de

我需要在oracle中创建一个使用绑定变量的脚本

提供了最多的信息,但我无法获得正确的语法

insert into history_text (itemid,clock,ns,value) values (:1,:2,:3,:4)
102857,1568735807,994374837,'maint'
102884,1568735807,996865154,'dev'
64782,1568735808,64131520,'Linux'
468595,1568735808,90767673,'deployed'
468620,1568735808,98388037,'cat'
要创建用于测试的表,请执行以下操作:

CREATE TABLE test(
    itemid                   number(20)                                NOT NULL,
    clock                    number(10)      DEFAULT '0'               NOT NULL,
    value                    nclob           DEFAULT ''                ,
    ns                       number(10)      DEFAULT '0'               NOT NULL
);
我想一个脚本,将能够做一个大容量插入与上述值。这是为了让我的oracle DBA能够在数据库上测试insert性能


我想做一个绑定变量插入,因为这是模拟我正在使用的软件的方法

试试这个:

begin
  for rec in (
              select 102857 as itemid,1568735807 as clock,994374837 as ns,'maint' as  value from dual union all
              select 102884,1568735807,996865154,'dev' as value from dual union all
              select 64782,1568735808,64131520,'Linux' as value from dual union all
              select 468595,1568735808,90767673,'deployed' as value from dual union all
              select 468620,1568735808,98388037,'cat' as value from dual)
  loop
     execute immediate 'insert into <table_name> (itemid,clock,ns,value) values (:1,:2,:3,:4)' 
       using rec.itemid,rec.clock,rec.ns,rec.value;
  end loop;
end;
/


为什么要使用绑定变量?为什么不只是一个插入?我想做一个绑定变量插入,因为这是模仿我正在使用的软件的方法。