數據定義語言(DDL)
用處:
- 用來定義數據庫對象、庫、表、列
- 刪除數據庫對象、庫、表、列
- 修改庫、表的結構
數據類型:
類型 | 表示 |
---|---|
整型 | int |
浮點型 | double |
金錢 | decimal |
固長字符串 | char(255) |
變長字符串 | varchar(65535) |
超大字符串 | text(clob) |
超大二進制 | blob |
日期 | data |
時間 | time |
時間戳 | timestamp |
對於text和blob類型的詳細分類:
表示 | 儲存大小 | 類型 |
---|---|---|
tinyblob | 256B | 二進制 |
blob | 64K | 二進制 |
mediublob | 16M | 二進制 |
longblob | 4G | 二進制 |
tinyclob | 256B | 字符串 |
colb | 64K | 字符串 |
mediuclob | 16M | 字符串 |
longclob | 4G | 字符串 |
注意:在數據庫中需要保存一下圖片、視頻、MP3等數據時,就要用到二進制的類型,而大小可根據需要自己選擇;類似於微博、新浪這樣的網站,在存儲每篇文章時,對於這樣龐大的字符串,已經不是一個varchar可以滿足的了,這時候就要輪到clob(text)出場了;在MySQL中,表示超大字符串要用text,而Oracle中就要用clob!
DDL對於庫的操作:
-
SHOW DATABASES; //查看所有數據庫
-
CREATE TABLE [IF NOT EXISTS] 數據庫名[CHARSET=utf8]; //創建數據庫
-
USE 數據庫名稱; //切換數據庫
-
DROP DATABASE 數據庫名; //刪除數據庫
DDL對於表操作:
-
DESC 表名; //查看錶結構
-
CREATE TABLE 表名( 列名 列類型, 類名 列類型, ...... 列名 列類型 ) //創建一張新表
-
SHOW TABLES; //顯示庫中所有表
-
DROP DATABASE 數據庫名; //刪除數據庫
-
DROP TABLE 表名; //刪除表
-
ALTER TABLE 表名 ADD 列名 列類型; //增加列
-
ALTER TABLE 表名 MODIFY 列名 新類型; //修改列類型
-
ALTER TABLE 表名 DROP 列名稱; //刪除列
-
ALTER TABLE 表名 RENAME TO 新表名; //修改表名
-
ALTER TABLE 表名 CHANGE 列名 新列名 新類型; //修改列
數據操作語言(DML):
用處:
- 定義記錄
- 增、刪、改
DML之增:
-
INSERT INTO 表名 (列名,列名......) VALUES (列值,列值......); //插入記錄
-
INSERT INTO 表名 VALUES (列值,列值......); //修改列
注意:如果沒有給出列名,那就默認按照列的順序,將value對應放入!
DML之改:
-
UPDATE 表名 SET 列名=列值 WHERE 條件; //按照條件修改記錄
這裏給出SQL語句中常用到的邏輯運算符:
意義 | 符號 |
---|---|
且 | AND |
或 | OR |
非 | NOT |
判斷空 | IS NULL |
區間 | BETWEEN 數值 AND 數值 |
包含 | IN |
大小判斷 | <、>、<=、>=、<> |
DML之刪:
-
DELETE FROM 表名 WHERE 條件; //刪除記錄
注意:如果在此時不用WHEREE控制條件的話,就會將整個表刪除!
數據控制語言(DCL):
這個模塊可以說時SQL中最爲簡單的一塊了,其作用就是對於用戶的建立和授權!
用處:
- 創建用戶
- 給用戶授權
- 撤銷授權
- 查看授權
DCL之創建用戶:
-
CREATE USER 用戶名@IP地址 INDENTIFITY by '密碼'; //創建用戶
DCL之給用戶授權:
-
注意:這裏來如果將權限的位置換成ALL,就代表給用戶所有權限,包括增、刪、改等!GRANT 權限1,權限2...ON 數據庫.* TO 用戶名@IP地址; //爲用戶授權
DCL之撤銷授權:
-
revoke 權限1,權限2...... on 數據庫.* from 用戶名@IP地址; //撤銷授權
DCL之查看授權:
-
show grants for 用戶名@IP地址; //查看授權
DCL之刪除用戶:
-
drop user 用戶名@IP地址; //刪除用戶
數據查詢語言(DQL):
用處:五花八門的查詢出自己想要的數據
注意:對於前端和後端的兄弟來說,這是…重點!重點!重點!重點!重點!重點!重點!重點!重點!重點!
DQL之基礎查詢:
-
SELECT * FROM 表名; //最爲基礎的查詢
上面的命令,可以查詢出指定表格的所有信息!
在這一此中,關於DQL我就給大家這一條語句,(因爲查詢這塊比較重要,所有在下次會給大家詳細介紹)現在的階段只要大家能查到整張表,就很好了!
下次,會給大家帶來詳細的列查詢、條件查詢、模糊查詢、排序、分組、聚合函數、分頁查詢!