如何在Oracle Developer 6i中创建序列
我试图为一个小桌子制作一个简单的界面。我正在尝试使它自动生成。表的创建过程如下所示:如何在Oracle Developer 6i中创建序列,oracle,plsql,oracleforms,Oracle,Plsql,Oracleforms,我试图为一个小桌子制作一个简单的界面。我正在尝试使它自动生成。表的创建过程如下所示: create table Buyer_Entery_Table ( serial_number number(6) not null customers_seq, good_name varchar2(300), employee_name varchar2(400), Quantity number(6), value number(10), entry_number number(6), outer_
create table Buyer_Entery_Table
(
serial_number number(6) not null customers_seq,
good_name varchar2(300),
employee_name varchar2(400),
Quantity number(6),
value number(10),
entry_number number(6),
outer_number number(6),
today date,
department_name varchar2(300),
notes varchar2(400)
);
我创建了一个序列以及以下内容:
CREATE SEQUENCE customers_seq
START WITH 1
INCREMENT BY 1
NOCACHE
NOCYCLE;
在表单生成器中,我在块级别添加了一个触发器。触发器是预插入的。
我使用了以下代码:
declare
v_no number;
Begin
select customers_seq.nextval into v_no from Dual;
:Buyer_Entery_table.serial_number := v_no;
end;
我试着去编译。我有以下错误
ORA-00600:内部错误代码,参数:[17069],[101534824],[],[],[],[],[],[],[],[],[],[]
你知道我犯了什么错误吗?这可能是因为表单6i中的错误。你需要解决它 请连接到metalink.oracle.com并转到修补程序部分下载修补程序17并安装 如果您没有metalink帐户,则可以创建metalink帐户 在注册时使用metalink,并用软件许可证的数据填写表格 有关更多信息,请参阅 问题在于,在oracle窗体中使用dual作为一种变通方法,您可以尝试在数据库中创建plsql过程
create or replace procedure pr_increment_sequence(p_increment OUT NUMBER) is
begin
select customers_seq.nextval into p_increment from Dual;
end pr_increment_sequence;
以及以下Oracle表单中的代码
declare
v_no number;
Begin
pr_increment_sequence(v_no);
:Buyer_Entery_table.serial_number := v_no;
end;
只需创建一个具有伪列名的表dual。。 插入一些值就是这样你的工作完成了 语法 创建表dual(虚拟varchar2(10));
插入双('a') 让你的标签合适,读一下这个