日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql自增长主键_MySQL数据库8(九)列属性之主键、自增长

發(fā)布時間:2023/12/2 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql自增长主键_MySQL数据库8(九)列属性之主键、自增长 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

主鍵

顧名思義,主要的鍵,primary key,在一張表中,有且只有一個字段,里面的值具有唯一性

創(chuàng)建主鍵

隨表創(chuàng)建

系統(tǒng)提供了兩種增加主鍵的方式:

1、直接在需要當做主鍵的字段之后,增加primary key屬性來確定主鍵

2、在所有字段之后增加primary key選項:primary key(字段信息)

表后增加

基本語法:alter table 表名 add primary key(字段);

查看主鍵

方案1: 查看表結(jié)構(gòu)

方案2:查看表的創(chuàng)建語句

刪除主鍵

基本語法:alter table 表名 drop primary key;

復合主鍵

主鍵約束

主鍵一旦增加,那么對對應(yīng)的字段數(shù)據(jù)有要求:

1、當前字段對應(yīng)的數(shù)據(jù)不能為空。

2、當前字段對應(yīng)的數(shù)據(jù)不能有任何重復

主鍵分類

主鍵分類采用的是主鍵所對應(yīng)的字段的業(yè)務(wù)意義分類:

業(yè)務(wù)主鍵:主鍵所在的字段,具有業(yè)務(wù)意義(學生ID,課程ID)

邏輯主鍵:自然增長的整型(應(yīng)用廣泛)

自增長

自動增長:auto increment,當給定某個字段的屬性之后,該列的數(shù)據(jù)在沒有提供確定數(shù)據(jù)的時候,系統(tǒng)會根據(jù)之前已經(jīng)存在的數(shù)據(jù)進行自動增加后,填充數(shù)據(jù)

通常自動增長用于邏輯主鍵

原理

自動增長的原理:

1、在系統(tǒng)中有維護一組數(shù)據(jù),用來保存當前使用了自動增長屬性的字段,記住當前對應(yīng)的數(shù)據(jù)值,在給定一個指定的步長。

2、當用戶進行數(shù)據(jù)插入的時候,如果沒有給定值,系統(tǒng)在原始值上加上步長變成新的數(shù)據(jù)

3、自動增長的觸發(fā):給定屬性的字段沒有提供值

4、自動增長只適用于數(shù)值

使用自動增長

基本語法:在字段之后增加一個屬性 auto_increment;

插入數(shù)據(jù):觸發(fā)自動增長,不能給定具體值(可以給null)

修改自動增長

1、查看自增長:自增長一旦觸發(fā)使用后,會自動地在表選項中增加一個選項(一張表最多只能擁有一個自增長)

2、表選項可以通過修改表結(jié)構(gòu)來實現(xiàn)

基本語法:alter table 表名 auto_increment = 值;

刪除和增加自動增長

刪除自增長:就是在字段屬性之后不再保留auto_increment,當用戶修改自增長所在字段時,如果沒有看到auto_increment屬性,系統(tǒng)會自動清除該自增長。

刪除自增長:alter table my_auto modify id int;

增加自增長:alter table my_auto modify id int auto_increment;

初始設(shè)置

在系統(tǒng)中,有一組變量用來維護自增長的初始值和步長

查看:show variables like ‘a(chǎn)uto_increment%’;

修改自增長步長和初始值:

set auto_increment_increment = 值;

set auto_increment_offset = 值;

細節(jié)問題

1、一張表中只有一個自增長,:自增長會上升到表選項中。

2、如果數(shù)據(jù)插入中沒有觸發(fā)自增長(給定了數(shù)據(jù)),那么自增長不會表現(xiàn),用戶指定數(shù)據(jù)之后,自增長不參與,但是自增長默默根據(jù)當前用戶設(shè)定的值初始化下一個值。

3、自增長在修改的時候,值可以較大,但是不能比當前已有的自增長字段的值小。

總結(jié)

以上是生活随笔為你收集整理的mysql自增长主键_MySQL数据库8(九)列属性之主键、自增长的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。