sql server2000有一个字段的类型可以字段自动生成编号:在oracle不知道是那一个字段类型可以自动生成编号:
例如:
表:Table1
字段:AA --???选择那一个字段类型可以“自动生成编号”
BB varchar2(20) Insert Into Table1(BB)Values('a');
Insert Into Table1(B)Values('b');
SQL> Select * From able1;
AA BB
--------------------------------------- ----------
1 a
2 b-------------------------------------能否可以自动生成“1、2、3、4……”
例如:
表:Table1
字段:AA --???选择那一个字段类型可以“自动生成编号”
BB varchar2(20) Insert Into Table1(BB)Values('a');
Insert Into Table1(B)Values('b');
SQL> Select * From able1;
AA BB
--------------------------------------- ----------
1 a
2 b-------------------------------------能否可以自动生成“1、2、3、4……”
还是不能自动生成编号“1、2、3、4……”在oracle11g没有见有“rownum”数据类型请问还要设置那里?
1.使用rownum
2.给AA那一列创建一个序列sequence
select rownum,table_name from user_tables;要像sqlserver里的自动增长列那样为记录赋序号
用序列sequence
create sequence SEQNAME ....
用SEQNAME.NEXTVAL填充序号字段
ORACLE11G 没有见有“rownum”
可以手动调用序列名.nextval
如果一定要自动,就写个触发器
create sequence 序列名
increment by 1 start with 1
minvalue 1.0E28 minvalue 1
nocycle
catch 20 NOORDER noorder(创建序列可以界面操作的,只要你安装了oracle就行,可以显示SQL语句的)之后再创触发器:
create trigger 名称
before insert on 表名
for each row
begin
select 序列名.nextval into :new.id from dual;
end;(这个也是可以显示SQL语句的)这样就行了,我也是才学没几天的,呵呵