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

创建一个数据表,其中的第一个字段数据类型为自动编号,像access里的那样.这个sql语句该怎么写.... 创建一个数据表, 其中的第一个字段数据类型为自动编号, 像access里的那样. 这个sql语句该怎么写. 展开
 我来答
lzm_君临天下
2015-12-03 · 知道合伙人软件行家
lzm_君临天下
知道合伙人软件行家
采纳数:68 获赞数:416
毕业于武汉纺织大学工程系

向TA提问 私信TA
展开全部
  •  这是在ms sqlserver中是这么创建的

  1. create table tablename(

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

  3. )

战地密报
2015-10-22 · TA获得超过211个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:160万
展开全部
第一种方式:创建table的时候直接创建一个自增长的标识列,以这个标识列为编号;
第二种方式:查询table的时候自动生成排序编号,可以使用row_number() over(),比如
SELECT *, Row_Number() OVER (partition by deptid ORDER BY salary desc) rank FROM employee
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夜未夜读书声
2009-08-27 · TA获得超过777个赞
知道小有建树答主
回答量:661
采纳率:0%
帮助的人:520万
展开全部
使用 identity(a,b)

a为起始值,b为每次自增的数量
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
csuxp2008
2009-08-26 · TA获得超过6485个赞
知道大有可为答主
回答量:4704
采纳率:50%
帮助的人:2459万
展开全部
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;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fortune25
2009-08-26 · TA获得超过188个赞
知道答主
回答量:138
采纳率:0%
帮助的人:140万
展开全部
create table aa
(
a int identity(1,1),
b varchar(20)
)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式