MySQL之淺談DDL和DML

前言

        在前面的文章中我們認識瞭MySQL,以及熟悉瞭如何使用MySQL的查詢語句

        數據操作增刪查改中的查我們已經介紹瞭,那麼本篇文章將會介紹剩下的增刪改以及數據庫和表的常用操作,比如創建、刪除、修改。

一、DDL

        可能有看官老爺會問,什麼是DDL啊?這裡博主簡單介紹一下,DDL全名Data Define Languge,從英文上我們可以很輕松的翻譯過來叫數據定義語言,即用於庫和表的創建、修改、刪除。

1.1 數據庫操作

1.1.1 創建與使用數據庫

#創建數據庫
CREATE DATABASE 數據庫庫名;
 
#創建數據庫,先判斷數據庫是否存在,再創建
CREATE DATABASE IF NOT EXISTS 數據庫庫名;
 
#創建數據庫,並指定字符集
CREATE DATABASE 數據庫庫名 CHARACTER SET 字符集;
 
#使用數據庫
USE 數據庫庫名;

1.1.2 查詢數據庫

#查詢所有數據庫的名稱
SHOW DATABASES;
 
#查詢某個數據庫的字符集:查詢某個數據庫的創建語句
SHOW CREATE DATABASE 數據庫庫名;
 
#查詢正在使用的數據庫名
SELECT DATABASE();

1.1.3  修改數據庫的字符集

#修改數據庫的字符集
ALTER DATABASE 數據庫庫名 CHARACTER SET 字符集名稱;

1.1.4 刪除數據庫

#刪除數據庫
DROP DATABASE 數據庫庫名;
 
#判斷數據庫是否存在,再刪除
DROP DATABASE IF EXISTS 數據庫庫名;

1.2 數據表操作

1.2.1 創建數據表

#創建數據表
CREATE TABLE 表名(
	列1 數據類型 【約束】,
	列2 數據類型 【約束】,
	...
	列n 數據類型 【約束】	
);

       :最後一句的時候不用加逗號。

1.2.2 查詢數據表

#查詢當前數據庫中的所有表
SHOW TABLES;
 
#查詢某個數據庫中的所有表
SHOW TABLES FROM 數據庫庫名;
 
#查詢表結構
DESC 表名;

1.2.3 修改數據表

#修改表名
ALTER TABLE 表名 RENAME TO 新表名;
 
#修改表的字符集
ALTER TABLE 表名 CHARACTER SET 字符集;
 
#添加一列
ALTER TABLE 表名 ADD 列名 數據類型;
 
#修改列名稱、數據類型
ALTER TABLE 表名 CHANGE 列名 新列別 新數據類型;
ALTER TABLE 表名 MODIFY 列名 新數據類型;
 
#刪除列
ALTER TABLE 表名 DROP 列名;

1.2.4 刪除數據表

#刪除數據表
DROP TABLE 數據表;
 
#先判斷是否存在數據表,再刪除
DROP TABLE IF EXISTS 數據表;

        其實對數據庫和數據表操作的關鍵字都是一樣的,隻不過是在之後表明是對數據庫還是對數據表進行操作。如果是對數據庫進行操作就加上database,如果是對數據表進行操作就加上table

1.3 常用數據類型

1.4 約束

         概念:對表中的數據進行限定,保證數據的正確性、有效性和完整性。

                ​​​​​​​        ​​​​​​​        

1.5 標識列

        自增

        在字段後面添加auto_increment

 二、DML

        介紹完DDL之後,我們再來看DML,DML全名Data Manipulate Language,同樣直譯過來就是數據處理語言,DML用於添加、刪除、修改數據庫記錄,並檢查數據完整性。

2.1 添加數據

#添加數據
INSERT INTO 表名(列名1,...) VALUES(值1,...);
 
INSERT INTO 表名 SET 列名1 = 值1,...,列名n = 值n;

        添加數據時需註意

                                1.列名與值需要一一對應。

                                2.列數與值數必須一致。

                                3.省略列名,則默認給所有列添加值。

2.2 修改數據

#修改單表數據
UPDATE 表名 SET 列名1 = 值1,...,列名n = 值n 【WHERE 篩選條件】;
 
#修改多表數據
UPDATE 表1 別名,表2 別名 SET 字段 = 新值,..., WHERE 連接條件 AND 篩選條件;

        :如果不加條件,則修改表中的所有數據。

2.3 刪除數據

#刪除數據
DELETE FROM 表名 【WHERE 條件】; #如果不加條件,則刪除表中所有記錄。
 
#刪除表中所有記錄
DELETE FROM 表名;    ----不推薦使用。
TRUNCATE TABLE 表名;    -----推薦使用,效率高。

        delete與truncate對比

                                                ​​​​​​​

到此這篇關於MySQL之淺談DDL和DML的文章就介紹到這瞭,更多相關MySQL中DDL和DML內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: