MySQL - DDL詳解(Data Definition Language)

LiberHome發表於2022-06-05

DDL常用於資料庫的操作,比如資料庫的增刪查改。

建立資料庫
CREATE database db_test
或者
CREATE database if not exists db_test;
顯示所有資料庫
SHOW databases;
修改資料庫

ALTER database db_test character set gbk;

刪除資料庫
DROP database db_test;
或者
DROP database if exists db_test ;
選擇資料庫進行操作
USE db_test


在選擇資料庫之後,我們就可以建立資料表了:
建立資料表
建立資料表有很多細節,下面直接用一個例子說明:

 CREATE TABLE students(
    -> stu_num char(8) not null unique,
    -> stu_name varchar(20) not null,
    -> stu_age int not null,
    -> stu_tel char(11) not null unique,
    -> stu_qq varchar(11) unique
    -> );

檢視資料表的結構
desc students;
執行結果如下:

+-----------+-------------+------+-----+---------+-------+
| Field     | Type        | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| stu_num   | char(8)     | NO   | PRI | NULL    |       |
| stu_name  | varchar(20) | NO   |     | NULL    |       |
| stu_age   | int         | NO   |     | NULL    |       |
| stu_tel   | char(11)    | NO   | UNI | NULL    |       |
| stu_qq    | varchar(11) | YES  | UNI | NULL    |       |
+-----------+-------------+------+-----+---------+-------+

刪除資料表
DROP TABLE if exists <tablename> ;
修改資料表
修改資料表名
ALTER TABLE students rename to stus;
修改字符集
ALTER TABLE stus character set utf8;
新增欄位
ALTER TABLE stus add stu_remark varchar(200);
修改欄位名和型別和非空約束

ALTER TABLE stus change stu_nbame stu_name varchar(20) not null;

刪除欄位
ALTER TABLE stus drop stu_remark;

參考:bilibili

相關文章