MySQL 命令種類

本文首發於我的微信公衆號《andqian》,期待你的關注!

前言

嗯,這兩天,又開始犯懶了,搓搓手,揚起,就是左右各一巴掌。繼續開始更新文章! 今天咱們來講說一個比較通俗易懂的概念。咱們從開始寫這一系列文章開始,就不停在說SQL語法,卻不知,SQL語法也是有分類的。今天咱們就來講說這個分類。數據庫

語句分類

在詳細說以前,先來看看這個圖:微信

圖片來源: w3schoolsspa

圖中比較直觀的說明了。SQL命令分爲四種,分別爲:DDL,DML,DCL,TCL。下面分別介紹這四種類型分別包括哪些命令。.net

DDL

DDL 全稱:Data Definition Language(數據定義語言),既然是定義語言,其就包括:設計

  • create:建立數據庫及其對象(包括新建表,索引,視圖,存儲過程等)。
  • alter: 改變現有數據庫的結構(包括: 修改索引,修改字段類型,刪除索引)。
  • truncate: 刪除表中全部記錄,並刪除已分配的空間。
  • comment:添加註釋,還記得在前面的文章中說過,新建表以及字段上添加註釋的習慣嗎?
  • rename: 重命名,其中包括索引,表名等。

DML

DML全稱是:Data Manipulation Language(數據操做語句),其中就包括:3d

  • select 語句,從數據庫中檢索數據。
  • insert語句,新增數據到數據庫中。
  • update語句,更新表格中現有數據。
  • delete 語句,刪除現有數據。
  • explain 語句,查看語句的執行計劃。
  • lock table 語句,鎖表操做。

DCL

這一類語句,日常咱們用的比較少,DBA管理員用的比較多,但這很是重要。(要不下次也寫一寫?)。code

DCL 全稱爲:Data Control Language(數據控制語句),這裏指的控制,說的其實就是權限控制。涉及到的命令有:對象

  • grant:容許用戶訪問數據庫的權限。
  • revoke:撤銷用戶訪問數據庫的權限。

TCL

最後說一說,咱們的老朋友,注意:TCL不是電視品牌哦,而是:Transaction Control Language(事務控制語言)的簡稱。其中包括的命令有:blog

  • commit : 提交事務。
  • rollback : 會滾事務。
  • set trasaction: 設置事務隔離級別。

事務相關更多的文章,請查看 《MySQL之事務初識》, 《MySQL事務隔離級別》這兩篇文章。索引

這裏須要注意的是: 事務控制語句只有在DML語句上有效,在DDL語句上無效!

今日命令

命令:show tables;
做用:顯示當前數據庫中全部表名。
例子:

show tables;

以下圖所示(僅做演示):

該命令:在平常工做中,很是有用,可以幫助快速定位表,以及統計有多少表等等。

小結

這裏預告一下,下篇文章爲:《淺談MySQL在線DDL》,MySQL 5.6 及之後的新特性,盡請期待!

PS:原本,這篇文章應該是在《淺談MySQL在線DDL》的一小章節中出現的。爲了不文章過長,致使閱讀疲勞,就單獨擰出來,寫成了一篇,如今看,也挺好的!

最後:祝你們晚安!

相關閱讀:

寫會MySQL索引

讀懂MySQL執行計劃

談談MySQL隱式類型轉換

MySQL表設計踩過的坑!

 

   這裏寫圖片描述

掃碼關注,一塊兒進步

我的博客: http://www.andyqian.com

相關文章
相關標籤/搜索