DQL:Data Query Language SELECT 數據查詢語言
select具體用法
SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]
例子:找出emp表中員工號為007的員工的工資
SELECT t.sal
FROM emp t
WHERE t.ID =007
DML
DML = Data Manipulation Language,數據操縱語言,命令使用戶能夠查詢數據庫以及操作已有數據庫中的數據的計算機語言。具體是指是SELECT查詢、UPDATE更新、INSERT插入、DELETE刪除。
DML(Data Manipulation Language)數據操縱語言,SQL的分類之壹,此外還有DDL(Data Definition Language)數據定義語言和DCL(Data Control Language)數據控制語言。DML包括:INSERT、UPDATE、DELETE。註意,select語句屬於DQL(Data Query Language)。
DML分成交互型DML和嵌入型DML兩類。
依據語言的級別,DML又可分成過程性DML和非過程性DML兩種。
如insert,delete,update,select(插入、刪除、修改、檢索)等都是DML.
交互型DML:這類DML自成系統,可在終端上直接對數據庫進行操作。
嵌入型DML:這類DML是嵌入在主語言中使用。此時主語言是經過擴充能處理DML語句的語言。
過程性DML:用戶編程時,不僅需要指出“做什麽”(需要什麽樣的數據),還需要指出“怎麽做”(怎麽獲得數據)。層狀、網狀的DML屬於過程性語言。
非過程性DML:用戶編程時,只需要指出“做什麽”,不需要指出“怎麽做”。關系型DML屬於非過程性語言。
DDL
數據庫模式定義語言DDL(Data Definition Language),是用於描述數據庫中要存儲的現實世界實體的語言。壹個數據庫模式包含該數據庫中所有實體的描述定義。這些定義包括結構定義、操作方法定義等。
數據庫模式定義語言並非程序設計語言,DDL數據庫模式定義語言是SQL語言(結構化程序設計語言)的
組成部分。SQL語言包括三種主要程序設計語言類別的語句:數據定義語言(DDL),數據操作語言(DML)及數據控制語言(DCL)。
DDL描述的模式,必須由計算機軟件進行編譯,轉換為便於計算機存儲、查詢和操縱的格式,完成這個轉換工作的程序稱為模式編譯器。
模式編譯器處理模式定義主要產生兩種類型的數據:數據字典以及數據類型和結構定義。
數據字典和數據庫內部結構信息是創建該模式所對應的數據庫的依據,根據這些信息創建每個數據庫對應的邏輯結構;對數據庫數據的訪問、查詢也根據模式信息決定數據存取的方式和類型,以及數據之間的關系和對數據的完整性約束。
數據字典是模式的內部信息表示,數據字典的存儲方式對不同的DBMS各不相同。
數據類型和結構的定義,是指當應用程序與數據庫連接操作時,應用程序需要了解產生和提取的數據類型和結構。是為各種宿主語言提供的用戶工作區的數據類型和結構定義,使用戶工作區和數據庫的邏輯結構相壹致,減少數據的轉換過程,這種數據類型和結構的定義通常用壹個頭文件來實現。
數據庫模式的定義通常有兩種方式: 交互方式定義模式和通過數據描述語言 DDL 描述文本定義模式。
CREATE DATABASE 創建數據庫
CREATE {DATABASE | SCHEMA} db_name
[create_specification [, create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name
CREATE TABLE
創建數據庫表格
CREATE [TEMPORARY] TABLE tbl_name
[(create_definition,...)]
[table_options] [select_statement]
ALTER TABLE
修改數據庫表格
ALTER TABLE tbl_name
alter_specification [, alter_specification] ...
alter_specification:
ADD [COLUMN] column_definition [FIRST | AFTER col_name ]
| ADD [COLUMN] (column_definition,...)
| ADD INDEX (index_col_name,...)
| ADD [CONSTRAINT [symbol]]
PRIMARY KEY (index_col_name,...)
| ADD [CONSTRAINT [symbol]]
UNIQUE (index_col_name,...)
| ADD (index_col_name,...)
| ADD [CONSTRAINT [symbol]]
FOREIGN KEY (index_col_name,...)
[reference_definition]
| ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
| CHANGE [COLUMN] old_col_name column_definition
[FIRST|AFTER col_name]
| MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]
| DROP [COLUMN] col_name
| DROP PRIMARY KEY
| DROP INDEX index_name
| DROP FOREIGN KEY fk_symbol
| DISABLE KEYS
| ENABLE KEYS
| RENAME [TO] new_tbl_name
| ORDER BY col_name
| CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]
| [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]
| DISCARD TABLESPACE
| IMPORT TABLESPACE
| table_options
DROP TABLE
刪除數據庫表格
DROP [TEMPORARY] TABLE
tbl_name [, tbl_name] ...
[RESTRICT | CASCADE]
CREATE VIEW
創建查詢命令
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]
ALTER VIEW
修改查詢命令
ALTER [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]
DROP VIEW
刪除查詢命令
DROP VIEW
view_name [, view_name] ...
[RESTRICT | CASCADE]
DCL
DCL(Data Control Language)是數據庫控制語言。是用來設置或更改數據庫用戶或角色權限的語句,包括(grant,deny,revoke等)語句。在默認狀態下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人員才有權力執行DCL
DCL數據庫控制語言不同於程序設計語言,SQL語言(結構化程序設計語言)的組成部分包括了DCL數據庫控制語言。 SQL語言包括三種主要程序設計語言類別的語句:數據定義語言(DDL),數據操作語言(DML)及數據控制語言(DCL)。