SQL語言共分為四大類:資料查詢語言DQL,資料操縱語言DML,資料定義語言DDL,資料控制語言DCL,下文是對這四種語言以及事務處理語言的小總結
SQL(Structed Query Language )
- 1.資料定義語言——DDL
- 1.1 CREATE ——表的創建
- 1.2 DROP——表的洗掉
- 1.3 ALTER——更改表
- 1.4 TRUNCATE——截斷表
- 2.資料操作語言——DML
- 2.1 INSERT 往表中插入記錄
- 批量插入多條記錄
- 2.2 UPDATE子句修改資料庫中資料
- 2.3 DELETE 陳述句洗掉表中滿足條件的行記
- a.洗掉選中記錄
- b.洗掉全部記錄
- 3.資料查詢語言——DQL(DQL DATA QUERY LANGUAGE)
- 4.資料控制語言——DCL (DATA CONTROL LANGUAGE )
- 5.事務處理語言——TPL (TRANSACTION PROCESS LANGUAGE )
1.資料定義語言——DDL
- 對于資料庫或者資料庫的組件的結構的操作(DATA DEFINITION LANGUAGE ):
- 特點:不允許事務的回滾,
1.1 CREATE ——表的創建
語法
CREATE TABLE 表名(
欄位名 資料型別 約束,
欄位名 資料型別 約束
)
1.2 DROP——表的洗掉
DROP TABLE 表名
1.3 ALTER——更改表
1.4 TRUNCATE——截斷表
-
表的截斷,清空表中所有的記錄,
-
語法結構:
TRUNCATE TABLE 表名 -
TRUNCATE和DELETE區別
- TRUNCATE是DDL,只能洗掉表中所有記錄,釋放存盤空間, 使用ROLLBACK不可以回滾,
- DELETE是DML,可以洗掉指定記錄,不釋放存盤空間,使用 ROLLBACK可以回滾,
2.資料操作語言——DML
- 資料操作語言 (Data Manipulation Language ,簡稱DML),主要用來實作對資料庫表中的資料進行操作——增刪改
- 資料操作語言主要包括如下幾種:
? 增加行資料:使用INSERT陳述句實作
? 修改行資料:使用UPDATE陳述句實作
? 洗掉行資料:使用DELETE陳述句實作 - 特點:可以進行事務的回滾
2.1 INSERT 往表中插入記錄
- 語法:
INSERT INTO 表名(欄位串列) VALUES(值串列) - 其中:
1、欄位串列,值串列兩兩之間用逗號隔開
2、值串列中的值,字串和日期的常量,需要單引號括起來,
3、值的型別要與欄位的資料型別相符
4、INTO可以省略
5、欄位串列如果是插入整個表中的欄位,可以省略,但值串列的個數與順序要與定義的表的欄位的順序一樣,
6、欄位也可以寫其中的幾個,與后面的值的個數對應即可,
7、VALUES 關鍵字也可以使用VALUE,但一般用values
或見下圖:

例如:


批量插入多條記錄
- 使用insert陳述句可以一次性地向表批量插入多條記錄,語法格式如下,
INSERT INTO 表名(欄位名) VALUES(值串列1),(值串列2),…,(值串列n);
- 例如:

2.2 UPDATE子句修改資料庫中資料
-
修改資料主要用來按照指定條件修改表中某些行的列資料,
-
修改資料使用UPDATE子句完成,語法結構如下:
UPDATE 表名 SET 欄位名1=值1, 欄位名2=值2 WHERE子句 -
注意:
- where子句用于限定修改的記錄,如果不加where子句,默認修改該表中所有的記錄,
- SET子句用來限定修改哪些列,
- 可一次修改多條記錄

- 進行修改操作時要注意完整性約束錯誤
2.3 DELETE 陳述句洗掉表中滿足條件的行記
- 洗掉資料主要用來按照指定條件從表中洗掉某些行,
- 語法
DELETE FROM 表 WHERE子句 - 例如:
a.洗掉選中記錄

b.洗掉全部記錄

洗掉記錄時的同樣要注意完整性約束錯誤
3.資料查詢語言——DQL(DQL DATA QUERY LANGUAGE)
詳細的DQL說明請看這篇文章:MySQL陳述句——資料查詢語言DQL詳解
- 基本SELECT陳述句語法 :
SELECT [DISTINCT]{*|column|expression [alias],…} FROM table where子句; - 注意:
- SELECT子句表示所需檢索的資料列,
- FROM子句 表示檢索的資料來自哪個表,
- 舉例:

4.資料控制語言——DCL (DATA CONTROL LANGUAGE )
- GRANT
- REVOKE
5.事務處理語言——TPL (TRANSACTION PROCESS LANGUAGE )
關于TPL的詳解請看這篇文章:mySql事務處TPL的小總結
-
事務處理語言:Transaction Process Language ,簡稱TPL, 主要用來對組成事務的DML陳述句的操作結果進行確認或取消, 確認也就是使DML操作生效,使用提交(COMMIT)命令實作; 取消也就是使DML操作失效,使用回滾(ROLLBACK)命令實作,
-
事務的自動提交模式
- mysql中的事務是自動提交的,即每一個sql陳述句后默認加COMMIT陳述句
- 查看mysql的事務自動提交模式:SHOW VARIABLES LIKE 'autocommit’
- 修改mysql的自動提交模式
SET AUTOCOMMIT=1 表示開啟
SET AUTOCOMMIT=0 表示關閉
-
MySQL的事務處理主要有兩種方法
-
用begin,rollback,commit來實作:
begin開始一個事務
rollback事務回滾
commit 事務提交 -
直接用set來改變MySQL的自動提交模式
MySQL默認是自動提交的,也就是你提交一個sql,就直接執行!可以通過set autocommit = 0 禁止自動提交set autocommit = 1 開啟自動提交來實作事務的處理,
但要注意當用set autocommit = 0 的時候,以后所有的sql都將作為事務處理,直到用commit確認或 rollback結束,注意當結束這個事務的同時也開啟了新的事務!按第一種方法只將當前的做為一個事務!
-
看官,如果覺得這篇文章還不錯,點個贊加個關注再走唄 ^ - ^
MySql系列文章:
- MySql資料庫基本操作(一)
- MySql資料庫管理操作基本陳述句小結
- MySql中建表時約束條件的總結
- MySql中對資料型別的總結
- mySql事務處理TPL的小總結
- MySQL陳述句——資料查詢語言DQL詳解
- MySql資料庫中SQL陳述句的全面總結
- MySql中最基本最常用的函式小結
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/78904.html
標籤:其他
