[MYSQL][1]建立,修改,刪除表

徐~某~某發表於2018-06-02

檢視有哪些資料庫:

SHOW DATABASES;

建立,刪除資料庫:

CREATE DATAABASE mydb;

DROP DATABASE mydb;

檢視有哪些表:

SHOW TABLES;

建立,刪除表:

CREATE TABLE test (id INT,
name VARCHAR(20),
sex BOOLEAN
);

 DROP TABLE mytb;

檢視錶結構:

DESC TABLE mytb;

SHOW CREATE TABLE mytb; //檢視詳細資訊

設定表的主鍵:

CREATE TABLE mytb1 (id INT PRIMARY KEY,
name VARCHAR(20),
sex BOOLEAN
) //常見單欄位主鍵


CREATE TABLE mytb2 (id INT,
name VARCHAR(20),
sex BOOLEAN,
PRIMARY KEY(id,name)
)//建立多欄位主鍵,id,nane兩者的組合可以確定唯一的一條記錄

設定,刪除表的外來鍵:

CREATE TABLE mytb3 (id INT,
name VARCHAR(20),
sex BOOLEAN,
CONSTRAINT c_fk FOREIGN KEY(id,name)
    REFERENCES mytb2(id,name)
)

ALTER TABLE user DROP FOREIGN KEY c_fk;

子表的外來鍵關聯必須是父表的主鍵,而且資料型別必須一致。

 修改表名,欄位型別

ALTER TABLE mytb3 RENAME user; //修改表名

ALTER TABLE user MODIFY sex  VARCHAR(30);// 修改欄位資料型別

ALTER TABLE user CHANGE sex course INT;//修改欄位名;舊屬性名,新屬性名,新資料型別

 

新增欄位:

ALTER TABLE user ADD course_id INT NOT NULL FIRST[AFTER 屬性名];

刪除欄位:

ALTER TABLE user DROP course_id;

修改欄位排列位置:

ALTER TABLE user     MODIFY name  VARCHAR(20) AFTER course;// 舊欄位位置需要帶上資料型別

 

更改表的儲存引擎:

ALTER TABLE user ENGINE=MyISAM;

 

刪除被其他表關聯的父表時,應該先刪除子表的外來鍵約束,然後再刪除父表

 

相關文章