MySQL學習筆記(一)

來源:互聯網
上載者:User

標籤:

初學MySQL,感覺SQL語句還是有點多,在此做一些MySQL的基礎筆記,以防忘記。

1. 串連資料庫: mysql -h hostname -u username -p

預設情況下是串連本地的資料庫,所以上面可以簡寫為:mysql -u  root -p

2. 顯示資料庫:SHOW DATABASES;

3. 建立資料庫:CREATE DATABASE db1;

4. 刪除資料庫:DROP DATABASE db1;

4. 使用某一資料庫:USE db1;

5. 顯示該資料庫中所有的表:SHOW TABLES;

6. 建立表:CREATE TABLE  <表名> (欄位 資料類型 [約束條件] [預設值/其他屬性] );

這裡講解常用的約束:

(1)主鍵約束,可以加快查詢速度,要求主鍵列的資料唯一且不為空白。一種是上面的設定方式,另為一種是在欄位的最後加上:PRIMARY KEY [欄位1,欄位2,...]  

(2)外鍵約束,建立兩個資料表之間的連結,它是表中的一個欄位,對應另一個表的主鍵,其作用是保持資料的一致性與完整性。涉及的主表與從表概念:主表(父表):相關聯欄位中主鍵所在的那個表;從表(子表):相關聯欄位中外鍵所在的那個表。子表的外鍵必須關聯父表的主鍵,且關聯欄位的資料類型必須匹配。文法規則如下:CONSTRAINT <外鍵名> FOREIGN KEY [欄位1,欄位2,...] REFERENCES <主鍵名> [主鍵列1,主鍵列2,...]

(3)非空約束:指定欄位的值不為空白,文法:NOT NULL

(4)唯一性限制式:指明該列唯一,允許為空白,但只能有一個空值,它與主鍵的區別是:一個表只允許存在一個主鍵,且主鍵列不許為空白,而聲明UNIQUE的欄位可以有多個,且允許為空白。它使用與主鍵一樣,可以在資料類型後面加上,也可以在所有欄位後面加上 CONSTRAINT <約束名> UNIQUE (欄位名)  

(5)預設約束:定義預設值,使用DEFAULT關鍵詞。

   當然還有一個設定自動增加的屬性:AUTO_INCREMENT。一個表只允許有一個AUTO_INCREMENT,且它必須為主鍵的一部分。其欄位的資料類型可以為任意整數型別(TINYINT、SMALLIN、INT、BIGINT等)。

7. 查看錶結構:DESC tab1;

當需要查看建立表的詳細資料時,可以使用:SHOW CREATE TABLE tab1\G;

8. 修改表名:ALTER TABLE <舊錶名> RENAME <新表名>;

9. 修改欄位名:ALTER TABLE <表名> CHANGE <舊欄位名> <新欄位名> <新資料類型>;

10. 修改欄位的資料結構:ALTER TABLE <表名> MODIFY <欄位名> <資料類型>;

11. 添加欄位:ALTER TABLE <表名> ADD <新欄位名> <資料類型> [約束條件] [欄位位置屬性];

這裡的欄位位置屬性是指新添加的欄位在表中的順序,可以指定為表的第一列:FIRST,也可以指定在某一列的後面:AFTER line。當然也可以使用下面的語句修改欄位的排列位置。

12. 修改欄位的排列位置:LATER TABLE <表名> MODIFY <欄位1> <欄位1資料類型> FIRST | AFTER <欄位2>;

這裡還加上了欄位1資料類型,所以通過這種方法也可以修改欄位1的資料類型。

13. 刪除欄位:ALTER TABLE <表名> DROP <欄位名>;

14. 刪除外鍵約束:ALTER TABLE <表名> DROP FOREIGN KEY <外鍵約束名>;

外鍵約束關聯到其他的表,在這種情況下,如果直接刪除父表會失敗,所以可以先解除外部索引鍵關聯,再刪除主表。

15. 刪除表:DROP TABLE IF EXITS tab1;

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.