結構化查詢語言(Structured Query Language,SQL)是關系數據庫的標准語言,也是一個通用的,功能極強的關系數據庫語言。其功能不僅僅是查詢,而是包括數據庫模式創建,數據庫數據的插入與修改,數據庫安全性完整性定義與控制等一系列功能。
SQL的特點:
①綜合統一:SQL語言集數據定義語言(DDL),數據操縱語言(DML),數據控制語言(DCL)的功能於一體。
②高度非過程化:用SQL語言進行數據操作,只要提出“做什么”,而無需指明“怎么做”,因此無需了解存取路徑。存取路徑的選擇以及SQL語句的操作過程由系統自動完成。
③面向集合的操縱方式:SQL語言采用集合操縱方式,不僅操縱對象,查找結果可以是元組的集合,而且一次插入,刪除,更新操作的對象也可以是元組的集合。
④以同一種語法結構提供兩種使用方式:SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立的用於聯機交互的使用方式,也能夠嵌入到高級語言程序中,供程序員設計程序時使用。
⑤語言簡潔,易學易用。
三級模式結構
支持SQL的關系數據庫管理系統同樣支持關系數據庫的三級模式結構。
基本表:
①本身獨立存在的表
②SQL中一個關系就對應一個基本表
③一個(或多個)基本表對應一個存儲文件
④一個表可以帶若干索引
存儲文件:
①邏輯結構組成了關系數據庫的內模式
②物理結構對用戶是隱蔽的
視圖
①從一個或幾個基本表導出的表
②數據庫中只存放視圖的定義而不存放視圖對應的數據
③視圖是一個虛表
④用戶可以在視圖上再定義視圖