创建自动编号字段的sql语句怎么写?

2024-11-23 13:33:22
推荐回答(5个)
回答1:

  •  这是在ms sqlserver中是这么创建的

  1. create table tablename(

  2.    ID int identity(1,1) NOT NULL     -- identity(1,1) 就表示的是自增

  3. )

回答2:

第一种方式:创建table的时候直接创建一个自增长的标识列,以这个标识列为编号;
第二种方式:查询table的时候自动生成排序编号,可以使用row_number() over(),比如
SELECT *, Row_Number() OVER (partition by deptid ORDER BY salary desc) rank FROM employee

回答3:

使用 identity(a,b)

a为起始值,b为每次自增的数量

回答4:

sql server中:

create table aa
(
a int identity(1,1),
b varchar(20)
)

oracle采用序列+触发器

CREATE SEQUENCE SEQname
INCREMENT BY 1
START WITH 1
MAXVALUE 99999999
/
CREATE TRIGGER TRGname
BEFORE INSERT ON table_name
REFERENCING
NEW AS :NEW
FOR EACH ROW
Begin
SELECT SEQname.NEXTVAL
INTO :NEW.FIELDname
FROM DUAL;
End;

回答5:

create table aa
(
a int identity(1,1),
b varchar(20)
)