郝彥甲
摘 要 SQL數(shù)據(jù)庫語言是應(yīng)用范圍最廣又功能豐富的查詢語言,是數(shù)據(jù)庫原理相關(guān)課程目前首選的查詢語言。標(biāo)準(zhǔn)結(jié)構(gòu)的演化、分類和“非核心”內(nèi)容上的轉(zhuǎn)變構(gòu)成了SQL標(biāo)準(zhǔn)的發(fā)展歷史,而真正的“核心級”內(nèi)容基本以SQL92版本為基礎(chǔ),沒有發(fā)生太大的變化。作為具有十分靈活和強(qiáng)大的查詢功能的信息技術(shù)數(shù)據(jù)庫語言SQL,通過闡述SQL標(biāo)準(zhǔn)幾十年來的演變過程以及十三個版本的具體情況,本文試圖對標(biāo)準(zhǔn)化演變過程做出一些總結(jié)陳述。
【關(guān)鍵詞】數(shù)據(jù)庫語言 SQL 演變
1 引言
SQL是語言結(jié)構(gòu)化查詢(Structured Query Language)的縮寫,著名的關(guān)系數(shù)據(jù)庫原型系統(tǒng)System R所采用的SEQUEL語言是它的前身。
通常來說,核心SQL包括有四種語句用于主要程序來設(shè)計語言類別:
數(shù)據(jù)定義語言(SQL DDL),用于定義SQL模式、基本視圖、索引等結(jié)構(gòu)語句,例如CREATE、DROP、ALTER等。
數(shù)據(jù)操縱語言(SQL DML),數(shù)據(jù)操作分為數(shù)據(jù)查詢和數(shù)據(jù)更新兩種,數(shù)據(jù)更新又可以分為三種操作:插入、刪除和修改。
數(shù)據(jù)查詢語言(SQL DQL),查詢數(shù)據(jù)在程序中的相應(yīng)位置,包括SELECT語句。嵌入式SQL語言的應(yīng)用規(guī)則,涉及到SQL語句嵌入用于主語言程序的規(guī)定;
數(shù)據(jù)庫控制語言(SQL DCL),這一部分包括對基本表以及視圖進(jìn)行授權(quán)、有關(guān)完整性規(guī)則的概述、事務(wù)控制的執(zhí)行等內(nèi)容。
2 數(shù)據(jù)庫語言SQL標(biāo)準(zhǔn)演變
在ISO發(fā)布共十三個版本中,目前所應(yīng)用的也是最新的是2011年發(fā)布的ISO/IEC 9075:2011,SQL:2011,一代代版本的進(jìn)化代表著SQL的執(zhí)行效率的增強(qiáng)。
2.1 ISO 9075:1987
國際標(biāo)準(zhǔn)化組織(ISO)自20世紀(jì)60年代中期發(fā)布了第一份正式的國際法規(guī)之后,與之相關(guān)的數(shù)據(jù)庫查詢語言《信息處理系統(tǒng)數(shù)據(jù)庫語言SQL》于1987年公布,它提供了基本的語言概念和數(shù)據(jù)操作流程。
2.2 ISO/IEC 9075:1989
ISO/IEC 9075:1989正式版《信息處理系統(tǒng)SQL完整性增強(qiáng)》第二次于1989年發(fā)布,進(jìn)一步完善了這門數(shù)據(jù)庫語言,提高信息處理系統(tǒng)的效率。該標(biāo)準(zhǔn)是對版本1987的小更新,增加了完整性與完整性約束的相關(guān)規(guī)定。
2.3 ISO/IEC 9075:1992
ISO/IEC JTC1在1992年發(fā)布ISO / IEC 9075:1992《信息技術(shù)數(shù)據(jù)庫語言SQL》(簡稱SQL92)。該標(biāo)準(zhǔn)提供了一種新的操作模式和數(shù)據(jù)管理機(jī)制,在數(shù)據(jù)定義和數(shù)據(jù)操作內(nèi)容上有一定的增強(qiáng)。
2.4 ISO/IEC 9075-3:1995
在SQL92的規(guī)則發(fā)布后,SQL標(biāo)準(zhǔn)逐漸被分為信息技術(shù)發(fā)展中的多個部分。1995年,第三部分:調(diào)用層借口(SQL/CLI)正式發(fā)布,它是作為ISO/IEC 9075系列的一部分標(biāo)準(zhǔn)來發(fā)布的,而不是完全的替代。它對應(yīng)用程序中執(zhí)行SQL語句時使用的基礎(chǔ)概念重新定義,使得調(diào)用過程與SQL語句相獨(dú)立。
2.5 ISO/IEC 9075-4:1996
1996年,ISO/IEC 9075-4:1996《信息技術(shù)數(shù)據(jù)庫語言SQL第4部分:持久存儲模塊》正式發(fā)布,它是第一個正式發(fā)布版本的ISO / IEC 9075-4系列,對語法和語義存儲程序下了新的定義。
2.6 ISO/IEC 9075:1999
1999年公布的的數(shù)據(jù)庫語言ISO/IEC 9075:1999更新,取代了之前的幾個版本。
2.7 ISO/IEC 9075-10:2000
2000年,ISO/IEC 9075-10:2000發(fā)布,新的形式是標(biāo)準(zhǔn)ISO / IEC 9075-10首次發(fā)布的數(shù)據(jù)語言,它將基礎(chǔ)語言SQL擴(kuò)展到可以支持嵌入式j(luò)ava程序的SQL語句。
2.8 ISO/IEC 9075-9:2001
ISO/IEC 9075-9:2001于2001年發(fā)布,《第九部分:外部數(shù)據(jù)管理》是ISO/IEC 9075-9系列的數(shù)據(jù)庫語言,這次的更新是將SQL語言的擴(kuò)展到為通過數(shù)據(jù)管理來支持外部數(shù)據(jù)封裝等其他操作。
2.9 ISO/IEC 9075-13:2002
2002年,該年新發(fā)布的第13部分是指使用Java程序來設(shè)計語言的SQL例程和類型的程序等等,而此前發(fā)布的9075系列所有標(biāo)準(zhǔn)均被廢止。
2.10 ISO/IEC 9075:2003
在2003年,隨著之前一系列標(biāo)準(zhǔn)形式的發(fā)布,ISO / IEC 9075:2003 也出現(xiàn)在世人的面前,而此前發(fā)布的9075系列所有標(biāo)準(zhǔn)均被廢止。
2.11 ISO/IEC 9075-14:2006
2006年,有關(guān)機(jī)構(gòu)發(fā)布了ISO / IEC 9075-14:2006版本,《信息技術(shù) 數(shù)據(jù)庫語言 SQL 第十四部分:與XML有關(guān)的規(guī)范》在ISO / IEC 9075-14:2003的基礎(chǔ)上進(jìn)行了修改訂正。
2.12 ISO/IEC 9075:2008
2008年,有關(guān)機(jī)構(gòu)發(fā)布了ISO / IEC 9075:2008版本,《信息技術(shù) 數(shù)據(jù)庫語言 SQL》針對ISO / IEC 9075-14:2006重新修訂。
2.13 ISO/IEC 9075:2011
SQL2011也是ISO/IEC 9075:2011的縮寫,在這之前公布的所有系列標(biāo)準(zhǔn)的部分均廢除,而SQL2011是目前所通行的數(shù)據(jù)庫語言SQL的最新版本。
3 結(jié)語
作為VB對象的數(shù)據(jù)庫操作提供了對SQL語句的支撐,一般是用VB的各類控件來接收用戶訪問數(shù)據(jù)庫及其他的請求,在事件響應(yīng)程序代碼的過程中輸入語句進(jìn)行數(shù)據(jù)庫SQL查詢,并且以字符串的形式存在,以極快的速度將要求傳遞給操作對象,從而完成訪問數(shù)據(jù)庫的完整過程。
參考文獻(xiàn)
[1]李瑩,衛(wèi)鳳林.數(shù)據(jù)庫語言SQ L標(biāo)準(zhǔn)演變分析[J].信息技術(shù)與標(biāo)準(zhǔn)化,2011(07).
[2]姚劍芳.案例教學(xué)法在SQL Server連接查詢教學(xué)中的應(yīng)用[J].吉林省教育學(xué)院學(xué)報,2015(03).
作者單位
北方魏家峁煤電有限責(zé)任公司 內(nèi)蒙古自治區(qū)鄂爾多斯市 010308