SQL概述
? ? ? ?結(jié)構(gòu)化查詢語言(Structured Query Language)簡稱SQL轻掩,是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。
? ? ? ?結(jié)構(gòu)化查詢語言是高級的非過程化編程語言甩栈,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對數(shù)據(jù)的存放方法糕再,也不需要用戶了解具體的數(shù)據(jù)存放方式量没,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng), 可以使用相同的結(jié)構(gòu)化查詢語言作為數(shù)據(jù)輸入與管理的接口。結(jié)構(gòu)化查詢語言語句可以嵌套突想,這使它具有極大的靈活性和強大的功能殴蹄。
SQL語言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的關(guān)系數(shù)據(jù)庫系統(tǒng)SystemR上實現(xiàn)猾担。由于它具有功能豐富袭灯、使用方便靈活、語言簡潔易學(xué)等突出的優(yōu)點绑嘹,深受計算機工業(yè)界和計算機用戶的歡迎稽荧。1980年10月,經(jīng)美國國家標(biāo)準(zhǔn)局(ANSI)的數(shù)據(jù)庫委員會X3H2批準(zhǔn)工腋,將SQL作為關(guān)系數(shù)據(jù)庫語言的美國標(biāo)準(zhǔn)姨丈,同年公布了標(biāo)準(zhǔn)SQL畅卓,此后不久,國際標(biāo)準(zhǔn)化組織(ISO)也作出了同樣的決定构挤。?
簡介
SQL從功能上可以分為3部分:數(shù)據(jù)定義髓介、數(shù)據(jù)操縱和數(shù)據(jù)控制惕鼓。
SQL的核心部分相當(dāng)于關(guān)系代數(shù)筋现,但又具有關(guān)系代數(shù)所沒有的許多特點,如聚集箱歧、數(shù)據(jù)庫更新等矾飞。它是一個綜合的、通用的呀邢、功能極強的關(guān)系數(shù)據(jù)庫語言洒沦。其特點是:
1、數(shù)據(jù)描述价淌、操縱申眼、控制等功能一體化。
2蝉衣、兩種使用方式括尸,統(tǒng)一的語法結(jié)構(gòu)。SQL有兩種使用方式病毡。一是聯(lián)機交互使用濒翻,這種方式下的SQL實際上是作為自含型語言使用的。另一種方式是嵌入到某種高級程序設(shè)計語言(如C語言等)中去使用啦膜。前一種方式適合于非計算機專業(yè)人員使用有送,后一種方式適合于專業(yè)計算機人員使用。盡管使用方式不向僧家,但所用語言的語法結(jié)構(gòu)基本上是一致的雀摘。
3、高度非過程化八拱。SQL是一種第四代語言(4GL)届宠,用戶只需要提出“干什么”,無須具體指明“怎么干”乘粒,像存取路徑選擇和具體處理操作等均由系統(tǒng)自動完成豌注。
4、語言簡潔灯萍,易學(xué)易用轧铁。盡管SQL的功能很強,但語言十分簡潔旦棉,核心功能只用了9個動詞齿风。SQL的語法接近英語口語药薯,所以,用戶很容易學(xué)習(xí)和使用救斑。
功能
SQL具有數(shù)據(jù)定義童本、數(shù)據(jù)操縱和數(shù)據(jù)控制。?
1脸候、SQL數(shù)據(jù)定義功能:能夠定義數(shù)據(jù)庫的三級模式結(jié)構(gòu)穷娱,即外模式、全局模式和內(nèi)模式結(jié)構(gòu)运沦。在SQL中泵额,外模式有叫做視圖(View),全局模式簡稱模式( Schema)携添,內(nèi)模式由系統(tǒng)根據(jù)數(shù)據(jù)庫模式自動實現(xiàn)嫁盲,一般無需用戶過問。
2烈掠、SQL數(shù)據(jù)操縱功能:包括對基本表和視圖的數(shù)據(jù)插入羞秤、刪除和修改,特別是具有很強的數(shù)據(jù)查詢功能左敌。
3瘾蛋、SQL的數(shù)據(jù)控制功能:主要是對用戶的訪問權(quán)限加以控制,以保證系統(tǒng)的安全性母谎。
語句結(jié)構(gòu)
結(jié)構(gòu)化查詢語言包含6個部分:
1瘦黑、數(shù)據(jù)查詢語言(DQL:Data Query Language):其語句,也稱為“數(shù)據(jù)檢索語句”奇唤,用以從表中獲得數(shù)據(jù)幸斥,確定數(shù)據(jù)怎樣在應(yīng)用程序給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞咬扇,其他DQL常用的保留字有WHERE甲葬,ORDER BY,GROUP BY和HAVING懈贺。這些DQL保留字常與其它類型的SQL語句一起使用经窖。
2、數(shù)據(jù)操作語言(DML:Data Manipulation Language):其語句包括動詞INSERT梭灿、UPDATE和DELETE画侣。它們分別用于添加、修改和刪除堡妒。
3配乱、事務(wù)控制語言(TCL):它的語句能確保被DML語句影響的表的所有行及時得以更新。包括COMMIT(提交)命令、SAVEPOINT(保存點)命令搬泥、ROLLBACK(回滾)命令桑寨。
4、數(shù)據(jù)控制語言(DCL):它的語句通過GRANT或REVOKE實現(xiàn)權(quán)限控制忿檩,確定單個用戶和用戶組對數(shù)據(jù)庫對象的訪問尉尾。某些RDBMS可用GRANT或REVOKE控制對表單個列的訪問。
5燥透、數(shù)據(jù)定義語言(DDL):其語句包括動詞CREATE,ALTER和DROP沙咏。在數(shù)據(jù)庫中創(chuàng)建新表或修改、刪除表(CREAT TABLE 或 DROP TABLE)兽掰;為表加入索引等芭碍。?
6徒役、指針控制語言(CCL):它的語句孽尽,像DECLARE CURSOR,F(xiàn)ETCH INTO和UPDATE WHERE CURRENT用于對一個或多個表單獨行的操作忧勿。
語言特點
SQL風(fēng)格統(tǒng)一
SQL可以獨立完成數(shù)據(jù)庫生命周期中的全部活動杉女,包括定義關(guān)系模式、錄入數(shù)據(jù)鸳吸、建立數(shù)據(jù)庫熏挎、査詢、更新晌砾、維護坎拐、數(shù)據(jù)庫重構(gòu)、數(shù)據(jù)庫安全性控制等一系列操作养匈,這就為數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)提供了良好的環(huán)境哼勇,在數(shù)據(jù)庫投入運行后,還可根據(jù)需要隨時逐步修改模式呕乎,且不影響數(shù)據(jù)庫的運行积担,從而使系統(tǒng)具有良好的可擴充性。
高度非過程化
非關(guān)系數(shù)據(jù)模型的數(shù)據(jù)操縱語言是面向過程的語言猬仁,用其完成用戶請求時帝璧,必須指定存取路徑。而用SQL進行數(shù)據(jù)操作湿刽,用戶只需提出“做什么”的烁,而不必指明“怎么做”,因此用戶無須了解存取路徑诈闺,存取路徑的選擇以及SQL語句的操作過程由系統(tǒng)自動完成渴庆。這不但大大減輕了用戶負擔(dān),而且有利于提高數(shù)據(jù)獨立性。
面向集合的操作方式
SQL采用集合操作方式把曼,不僅查找結(jié)果可以是元組的集合杨帽,而且一次插入、刪除嗤军、更新操作的對象也可以是元組的集合注盈。
以同一種語法結(jié)構(gòu)提供兩種使用方式
SQL既是自含式語言,又是嵌入式語言叙赚。作為自含式語言老客,它能夠獨立地用于聯(lián)機交互的使用方式,用戶可以在終端鍵盤上直接輸入SQL命令對數(shù)據(jù)庫進行操作震叮。作為嵌入式語言胧砰,SQL語句能夠嵌入到高級語言(如C、 C#苇瓣、JAVA)程序中尉间,供程序員設(shè)計程序時使用。而在兩種不同的使用方式下击罪,SQL的語法結(jié)構(gòu)基本上是一致的哲嘲。這種以統(tǒng)一的語法結(jié)構(gòu)提供兩種不同的操作方式,為用戶提供了極大的靈活性與方便性媳禁。
語言簡潔眠副,易學(xué)易用
SQL功能極強,但由于設(shè)計巧妙竣稽,語言十分簡潔囱怕,完成數(shù)據(jù)定義、數(shù)據(jù)操縱毫别、數(shù)據(jù)控制的核心功能只用了9個動詞: CREATE娃弓、 ALTER、DROP拧烦、 SELECT忘闻、 INSERT、 UPDATE恋博、 DELETE齐佳、GRANT、 REVOKE债沮。且SQL語言語法簡單炼吴,接近英語口語,因此容易學(xué)習(xí)疫衩,也容易使用硅蹦。?
JQL概述
? ? ? ?檢索語言是根據(jù)信息檢索的需要創(chuàng)造出來的一種人工語言,是在文獻檢索領(lǐng)域中用來描述文獻特征和表達信息檢索提問的一種專用語言。
? ? ? ? 檢索語言是一種受控語言童芹,它依據(jù)一定的規(guī)則對自然語言進行規(guī)范涮瞻,將其編制成表,供信息標(biāo)引以及檢索時使用假褪。
? ? ? ?檢索語言是根據(jù)信息檢索的需要而創(chuàng)制的署咽,能夠唯一地表達各種概括文獻信息內(nèi)容的概念,能夠顯示概念之間的相互關(guān)系生音,并便于進行系統(tǒng)排列宁否,便于將標(biāo)引語言和檢索用語進行相符性比較的人工語言。
結(jié)構(gòu)
一缀遍,描述文獻的外表特征(書刊篇名——題目索引慕匠,著作姓名——著作索引,文獻序號--序號索引域醇,引用文獻--引文索引)
二台谊、描述文獻內(nèi)容特征
1、體系分類語言——分類索引
2歹苦、主題語言(標(biāo)題詞——標(biāo)題詞索引青伤。單元詞——單元詞索引督怜,關(guān)鍵詞——關(guān)鍵詞索引殴瘦,敘詞——敘詞索引)
3、代碼語言(分子式等——分子式索引等各種專用索引号杠,結(jié)構(gòu)式——結(jié)構(gòu)式索引)
種類
一蚪腋、自然語言(關(guān)鍵詞、題名即標(biāo)題姨蟋、全文屉凯、引文、作者和摘要等)
二眼溶、人工語言(分類檢索語言悠砚、主題檢索語言、代碼檢索語言)
以上信息來源百度百科