sql自增列
⑴ sql裡面如何插入自動增長序列號欄位
CREATE SEQUENCE 序列號的名稱 (最好是表名+序列號標記) INCREMENT BY 1 START WITH 1 MAXVALUE 99999 NOCYCLE NOCACHE;
其中最大的值按欄位的長度來定,比如定義的自動增長的序列NUMBER(6) , 最大值為999999
INSERT 語句插入這個欄位值為: 序列號的名稱.NEXTVAL
例子: SQL insert into s_dept(id, name, region_id) values (s_dept_id.nextval, ‘finance’, 2);
1 row created.
⑵ 如何用sql創建自增列
SQL SERVER?
identity屬性
create table tablename
(
id int identity,
c varchar(10)
)
id就是自增列。
已經創建的表無法直接把某欄位設置為自增,只能把原來的欄位刪除,之後再添加具有自增屬性的列。
步驟如下
--刪除列
alter table a
drop column list
--添加具有identity屬性的列
alter table a
add list int identity
⑶ 如何用sql語言創建自動增長的列
CREATE
TABLE
[表名]
(
[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
,
[列名]
[varchar]
(50)
COLLATE
Chinese_PRC_CI_AS
NULL
)
ON
[PRIMARY]
GO
能看明白嗎?[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
就是自動增長的欄位,自動加1.
⑷ sql server中如何實現自增欄位
1、主鍵自增,以及建表的語句如下:
CREATE TABLEIF NOT EXISTS `t_email_notice` (
`id` INT (11) UNSIGNED NOT NULL AUTO_INCREMENT,`send_time` INT (16) NOT NULL DEFAULT '0',PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
其中 `id` INT (11) UNSIGNED NOT NULL AUTO_INCREMENT,這句話表示設置id欄位字增,類型為int
2、varchar類型的主鍵,不會自增。但是你可以通過創建觸發器的形式,來實現自增。代碼如下:
CREATE TRIGGER `T` BEFORE INSERT ON `user`FOR EACH ROW begin
set new.id=concat('SH',lpad(((SELECT substring(id,3,4) from user where id=(select id from user order by id desc limit 1))+1),4,0));
end;
這段語句的意思是,當user表中新插入一條一條語句,會觸發『觸發器T』將以』SH『開頭的id欄位自增+1。
(4)sql自增列擴展閱讀
sql語句建表規則如下:
create table 『表名』 (『欄位1』 type1 [not null] [primary key] identity(起始值,遞增量),『欄位2』type2 [not null], ...)--primary key為主鍵 identity表示遞增數量。