Mysql 標識列

標識列又稱爲自增長列

含義:可以不用手動的插入值,系統提供默認的序列值

特點:

  • 可以不和主鍵搭配,但要求是一個key(unique)
  • 一個表中至多有1個標識列
  • 標識列的類型只能是數值型
  • 標識列可以通過 set_increment_increment = 3;設置步長,也可以通過手動插入值,設置初始值
  • 用delete清空表會標識列的當前序列,而truncate則不會

一、創建表時設置標識列

create table tab_identity(
        id int primary key auto_increment,
        name varchar(20)
)

insert into tab_identity values(NULL,'hee')
insert into tab_identity values(NULL,'wee')

使用auto_increment關鍵字使id自增長,在insert時爲了符合insert 語法所以要在id處設置一個NULL。插入時並不會插入NULL,而是自動從1開始增長。不想加NULL的話,可以使用下列語法

insert into tab_identity(NAME) values('qee')

 

可以設置增長量

使用下列語句可以查看關於auto_increment有關的變量

show variables like '%auto_increment%';

可以看到有兩個變量

上面那個是每次增長的量,下面那個是起始值,在mysql裏這個起始值是設置不了的

只能設置增長量,可以用set來設置增長量

set auto_increment_increment =5;#每次增長5個

如果想改變初始值,可以在第一次插入的時候,指定起始值

insert into tab_increment values(10,'hhh'); #從10開始

二、修改表時設置標識列

alter table tab_identity modify id int primary key auto_increment

三、修改表時刪除標識列

alter table tab_identity modify id int;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章