MySQL中的SQL語言

2021-09-07 07:34:09 字數 1622 閱讀 8003

從功能上劃分,sql 語言可以分為ddl,dml和dcl三大類。

1. ddl(data definition language)

資料定義語言,用於定義和管理 sql 資料庫中的所有物件的語言 ;

create---建立表

alter---修改表

drop---刪除表

2. dml(data manipulation language)

資料操縱語言,sql中處理資料等操作統稱為資料操縱語言 ;

insert---資料的插入

delete---資料的刪除

update---資料的修改

select---資料的查詢

3. dcl(data control language)

資料控制語言,用來授予或**訪問資料庫的某種特權,並控制 資料庫操縱事務發生的時間及效果,對資料庫實行監視等;

grant--- 授權。

rollback---回滾。

commit--- 提交。

4. 提交資料有三種型別:顯式提交、隱式提交及自動提交。

下面分 別說明這三種型別。

(1) 顯式提交

用 commit 命令直接完成的提交為顯式提交。

(2) 隱式提交

用 sql 命令間接完成的提交為隱式提交。這些命令是:

alter function, alter procedure, alter table, begin, createdatabase, create function, create index, create procedure, createtable, drop database, drop function, drop index, drop procedure,drop table, load master data, lock tables, rename table, setautocommit=1, start transaction, truncate table, unlock tables.

(3) 自動提交

若把 autocommit 設定為 on ,則在插入、修改、刪除語句執行後,

系統將自動進行提交,這就是自動提交。其格式為: sql>set autocommit on;

commit / rollback這兩個命令用的時候要小心。 commit / rollback 都是用在執行dml語句(insert / delete / update / select )之後的。dml語句,執行完之後,處理的資料,都會放在回滾段中(除了 select 語句),等待使用者進行提交(commit)或者回滾(rollback),當使用者執行 commit / rollback後,放在回滾段中的資料就會被刪除。

(select語句執行後,資料都存在共享池。提供給其他人查詢相同的資料時,直接在共享池中提取,不用再去資料庫中提取,提高了資料查詢的速度。)

所有的 dml 語句都是要顯式提交的,也就是說要在執行完dml語句之後,執行 commit 。而其他的諸如 ddl語句的,都是隱式提交的。也就是說,在執行那些非 dml 語句後,資料庫已經進行了隱式提交,例如 createtable,在執行指令碼後,表已經建好了,並不在需要你再進行顯式提交。

在提交事務(commit)之前可以用rollback回滾事務。

mysql幾種語言 mysql的幾種SQL語句

一 資料查詢語言 dql dql全稱 data query language,作用是從表中獲取資料,用的最多的關鍵字是select,保留字有where order by group by等 1 select user,host from mysql.user select user,host fro...

SQL 語言整理 mysql

測試sql語句的效能 select benchmark 100000 select date pre start date as times from jcb tnonstandardproduct as tp inner join jcb t product on ptrustid tp.prod...

SQL中的DDL,DML,DCL語言

感覺自己是比較笨的,學習過sql語言,但是卻分不太清楚ddl dml dcl語言,所以呢,今天就厚著臉皮問了老師,現在就自己目前的了解來總結一下。1 ddl data definition language 資料描述語言 ddl語句不會產生還原資料,所以刪除的資料也是無法恢復的 2 dml data...