MySQL的DDL/DML/DCL到底是什麼?

2021-12-29 JavaEdge

收錄於話題 #MySQL 5個

  點擊上方「JavaEdge」,關注公眾號

SQL 語句主要可劃分為如下:

DDL(Data Definition Languages)語句


數據定義語言,這些語句定義了不同的數據段、資料庫、表、列、索引等資料庫對象的定義。常用的語句關鍵字主要包括 create、drop、alter等。


DML(Data Manipulation Language)語句


數據操縱語句,用於添加、刪除、更新和查詢資料庫記錄,並檢查數據完整性,常用的語句關鍵字主要包括 insert、delete、udpate 和select 等。(增添改查)


DCL(Data Control Language)語句


數據控制語句,用於控制不同數據段直接的許可和訪問級別的語句。這些語句定義了資料庫、表、欄位、用戶的訪問權限和安全級別。主要的語句關鍵字包括 grant、revoke 等。


DDL 是數據定義語言的縮寫,簡單來說,就是對資料庫內部的對象進行創建、刪除、修改的操作語言。它和 DML 語言的最大區別是 DML 只是對表內部數據的操作,而不涉及到表的定義、結構的修改,更不會涉及到其他對象。DDL 語句更多的被資料庫管理員(DBA)所使用,一般開發人員很少使用。

【關注公眾號福利】:

回復「面經」,即可獲得海量大廠面試知識點及各種項目實戰資源。

添加筆者微信邀請進技術交流群

喜歡文章,點個「在看、點讚、分享」素質三連支持一下~

相關焦點

  • MySQL基本操作命令(DDL、DML、DQL、DCL)
    一:資料庫基本操作命令1.1:mysql查看資料庫結構1.2:查看資料庫信息mysql> show databases;++| Database |++| information_schema || mysql || performance_schema
  • DDL、DML、DCL基本應用
  • 記一次MySQL AUTO_INCREMENT的故障
    首先查看表數據和表結構,結果如下mysql> select  * from t2 order by id desc limit 3;+--+-+-+| id         | c1   | c2   |+--+-+-+| 2147483647 |  101 |  101 ||        100 |  100 |  100 |
  • 總結零散的 MySQL 基礎知識
    mysql> select * from c;++--++| CNO | CNAME | CTEACHER |++--++| 1 | 數學 | liming || 2 | 語文xueyou || 4 | 物理 | guorong || 5 | 化學 | liming |++--++5 rows in set (0.00 sec)mysql
  • Online DDL 工具 gh-ost實戰(一)
    –cut-over string:選擇cut-over類型:atomic/two-step,atomic(默認)類型的cut-over是github的算法,two-step採用的是facebook-OSC的算法。
  • SQL四種語言:DDL DML DCL TCL
  • MySQL之Online DDL
    舉例來看一下:存儲引擎為InnoDB的表,磁碟上會生成兩個物理文件,分別是.frm、.ibd,.frm就是表結構定義文件,我們通過MySQL官方提供的mysql-utilities工具包中的mysqlfrm來看一下.frm文件中存放的內容(因為.frm文件是二進位格式的,我們不能使用常規的Linux作業系統查看文本的方式來看,會出現亂碼):[172.xx.xx.xxx
  • 解密TenDB(MySQL) Flashback 實現(二):按記錄回滾實現
    結合 mysql row 模式 和 這裡的 mysqlbinlog 單用戶過濾,可以直接操作 binlog 實現回檔。像一些 ddl, statement 語句(pt-table-checksum產生的)會記錄為 query event,不支持這類語句的過濾和flashback。允許四個值:error|keep|ignore|safeerror: 遇到 query_event 立馬報錯退出。
  • mysql show processlist Time為負數的思考
    1、執行命令如果主庫執行常見的命令都會在命令發起的時候調用重載1,設置start_time為命令開始執行的時間如下:堆棧:#0 THD::set_time (this=0x7ffe7c000c90) at /mysqldata/percona-server-locks-detail-5.7.22/sql
  • 一開工,就遇到上億(MySQL)大表的優化,我的天...
    /data/3308/test/arrival_record.12K /datas/mysql/data/3308/test/arrival_record.frm30G /datas/mysql/data/3308/test/arrival_record.ibd沒有碎片,和mysql的該表的大小一致。
  • SQL中有關DQL、DML、DDL、DCL的概念與區別
  • 零散的MySQL基礎總是記不住?看這一篇就夠了!
    mysql> select * from c;++--++| CNO | CNAME | CTEACHER |++--++|   1 | 數學  | liming   ||   2 | 語文  | liming   ||   3 | 歷史  | xueyou   ||   4
  • DBA必備技能,mysql權限管理(DCL語句)
    今天要講的內容跟DBA有很大關係,想做DBA權限管理是很重要的,今天就講一下mysql中的權限管理。一、用戶管理;1、切換資料庫;如下圖所示,將界面切換至命令界面;輸入命令use mysql;這句代碼意思是切換資料庫,切換到mysql這個資料庫下面,因為用戶信息在mysql下的user表內存儲著。
  • MySQL的Online DDL語句
    概念什麼是 OnlineDDL?在了解 OnlineDDL之前,我們先來了解一下什麼是 DDL。
  • 技術分享 | mysql show processlist Time 為負數的思考
    in dispatch_command (thd=0x7ffe7c000c90, com_data=0x7fffec03fd70, command=COM_QUERY) at /mysqldata/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1247可以看到這個函數沒有實參,因此 start_time
  • 商務英語-CFO,DDL是什麼意思?
    比如:ddl,它是什麼意思呢?其實,ddl是deadline的縮寫,也就是我們說的「截止日期」,如:bid deadline 投標截止日期 ; 投標期限 Submission Deadline 截稿日期 ; 申請截止日期Absolute Deadline 絕對期限 ; 絕對截止時間
  • ③:MySQL中 DDL 常見操作命令匯總
    mysql> drop table IF EXISTS test9;Query OK, 0 rows affected, 1 warning (0.00 sec)mysql>mysql> create table test9(    ->    a int not null comment '欄位a',    ->
  • MySQL sql_mode 說明(及處理一起 sql_mode 引發的問題)
    那會是什麼原因在 set global 之後又變回strict模式呢,於是想到 mysqld_safe 啟動實際是一個保護進程,在mysqld異常停止之後會拉起來,會不會中間有異常導致 mysqld 重啟,致使 global 失效?
  • 發現一個關於MySQL的metadata lock的BUG
    請進行以下操作實現復現: 表結構如下:mysql> create table xcy_test_utf8( id