mysql非主鍵自增長

來源:互聯網
上載者:User

標籤:html   AC   www.   png   incr   color   分享   圖片   alt   

mysql並非只有主鍵才能自增長,而是設為鍵的列就可以設定自增長。

如下:
1234 CREATE TABLE t1 (    id INT,    col1 INT auto_increment NOT NULL);
結果如下:  如果把col1列設為鍵,就可以建立自增。
12345 CREATE TABLE t1 (    id INT,    col1 INT auto_increment NOT NULL,    key(col1));
結果如下:  如果我們把id設為主鍵,仍然可以建立成功。
12345 CREATE TABLE t2 (    id INT PRIMARY KEY,    col1 INT auto_increment NOT NULL,    key(col1));
結果如下:  所以自增列必須是鍵,但不一定非是主鍵。但一張表能否有多個自增列? 答:一張表只能有一個自增列。 
12345 CREATE TABLE t3 (    id INT PRIMARY KEY auto_increment,    col1 INT auto_increment NOT NULL,    key(col1));
結果如下:   

得出的結論為:每張表只能設定一個欄位為自增長欄位,這個欄位可以是主鍵,也可以不是主鍵,如果不是主鍵,則必須設定為一種“鍵(key)”

 

其實,主鍵(primary key)也是鍵(key)的一種,key還包括外鍵(foreign key)、唯一鍵(unique key)等,關於key的討論可以查看文章http://www.cnblogs.com/tanzq/p/9064511.html

mysql非主鍵自增長

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.