目錄
結構化查詢語言SQL
- 結構化查詢語言(Structured Query Language)簡稱SQL。
- 一種特殊目的的編程語言:是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關係數據庫系統。
- 同時也是數據庫腳本文件的擴展名。
- 結構化查詢語言是高級的非過程化編程語言(就是隻要結果不要執行過程的編程語言,輸入想要的信息,只要簡單的查詢語句,而不必在意DBMS在底層怎麼實現的)。
標準支持
- 1986年10月,美國國家標準協(ANSI)會對SQL進行規範後,以此作爲關係式數據庫管理系統的標準語言。
- 1987年得到國際標準組織(ISO)的支持下成爲國際標準。
- 不過各種通行的數據庫系統在其實踐過程中都對SQL規範作了某些編改和擴充。所以,實際上不同數據庫系統之間的SQL不能完全相互通用(因爲很多數據庫在SQL產生之前就已經有了,但是大部分的語法相同,即使不同的語法部分也是有相同的編程思想的,上手另一種數據庫還是很快的)。
SQL的影響
結構化查詢語言SQL是最重要的關係數據庫操作語言,並且它的影響已經超出數據庫領域,得到其他領域的重視和採用,如人工智能領域的數據檢索,第四代軟件開發工具中嵌入SQL的語言等。
語言特點
- 一體化:SQL集數據定義DDL、數據操縱DML和數據控制DCL於一體,可以完成數據庫中的全部工作。
- 非過程化:只提操作要求,不必描述操作步驟,也不需要導航。使用時只需要告訴計算機“做什麼”,而不需要告訴它“怎麼做”。
- 語言簡潔,語法簡單,好學好用:在ANSI標準中,只包含了94個英文單詞,核心功能只用6個動詞,語法接近英語口語。
- 使用方式靈活:它具有兩種使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主語言中使用。
語句結構
結構化查詢語言包含6個部分:sql語句以;結尾
- 數據定義語言(DDL:Data Definition Language):用來定義數據庫對象:庫、表、列等。
- 數據查詢語言(DQL:Data Query Language):用來查詢記錄(數據)。
- 數據操作語言(DML:Data Manipulation Language):用來定義數據庫記錄(數據)。
- 數據控制語言(DCL:Data Control Language):用來定義訪問權限和安全級別。
- 事務處理語言(TPL):它的語句能確保被DML語句影響的表的所有行及時得以更新。
- 指針控制語言(CCL):它的語句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用於對一個或多個表單獨行的操作。