欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

oracle中,小弟我做了个多条数据插入报错了 ora-02287: sequence number not allowed here

更新时间: 2014-01-05 02:11:27 责任编辑: Author_N1

 

oracle中,我做了个多条数据插入报错了 ORA-02287: sequence number not allowed here
sql语句如下:
insert into t_fms_dictionary(id,dic_key,dic_lang,DIC_UPDATABLE,DIC_VALUE)  
select seq_dictionary_id.nextval, '1','1' ,'1' ,'1'  from dual 
union all 
select  seq_dictionary_id.nextval , '2','2','2','2' from dual 
union all 
select seq_dictionary_id.nextval , '3','3','3','3' from dual

序列:
DROP SEQUENCE QBET.SEQ_DICTIONARY_ID;

CREATE SEQUENCE QBET.SEQ_DICTIONARY_ID
  START WITH 11161
  MAXVALUE 9999999999999999999999999999
  MINVALUE 1
  NOCYCLE
  CACHE 20
  NOORDER;
--参考方法--
不能像你那样。只能一个插入一个查询。
--参考方法--
序列不能这样弄,你想要什么效果,考虑换个方式
--参考方法--
普通的Insert into 语句一次只能插入一条记录
楼主如果要想一段sql 插多条记录,可以用For循环,在循环中,变量定义为lp
insert into t_fms_dictionary(id,dic_key,dic_lang,DIC_UPDATABLE,DIC_VALUE)   
value (seq_dictionary_id.nextval, lp ,lp ,lp ,lp) --不需要select
如果是想一次插入多条记录,只执行一次插入操作,可以用Forall
Type a_type is record 
   (id number,dic_key varchar2,dic_lang varchar2 ,DIC_UPDATABLE varchar2,DIC_VALUE varchar2);
Type a_table is table of a_type index by BINARY_INTEGER; 
declare
a a_table;
begin
For i in 1..n loop --循环赋值
 a[i].id := seq_dictionary_id.nextval;
 a[i].dic_key:= '';
  .....
end loop;
FORALL i IN a.first .. a.last  一次性插入
      INSERT INTO bs_contract_lotitem VALUES a(i);
end ;
--参考方法--
oracle不让这么用。说明如下:
Restrictions on Sequence Values You cannot use CURRVAL and NEXTVAL in the
following constructs:
■ A subquery in a DELETE, SELECT, or UPDATE statement
■ A query of a view or of a materialized view
■ A SELECT statement with the DISTINCT operator
■ A SELECT statement with a GROUP BY clause or ORDER BY clause   
■ A SELECT statement that is combined with another SELECT statement with the
UNION, INTERSECT, or MINUS set operator
■ The WHERE clause of a SELECT statement
■ The DEFAULT value of a column in a CREATE TABLE or ALTER TABLE statement
■ The condition of a CHECK constrain
--参考方法--
不允许这种写法,分开插
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:11:27
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6790/
本文WWW.DOC100.NET DOC100.NET版权所有。