關(guān)于MS-ACCESS SQL基礎(chǔ)的系列文章
從零認(rèn)識(shí)MS-ACCESS SQL
1.SQL基礎(chǔ)知識(shí):SQL簡(jiǎn)介。
2.簡(jiǎn)要說(shuō)明MS ACCESS數(shù)據(jù)庫(kù)與SQL查詢(xún)語(yǔ)言間的關(guān)系。
3.JET-SQL與ANSI-SQL的區(qū)別。
4.為什么要學(xué)習(xí)SQL。
5.ACCESS SQL數(shù)據(jù)類(lèi)型。
6.ACCESS SQL 數(shù)據(jù)類(lèi)型及用SQL創(chuàng)建數(shù)據(jù)庫(kù)表。
7.創(chuàng)建各種類(lèi)型的數(shù)據(jù)字段。
8.用SQL修改庫(kù)表結(jié)構(gòu)即ALTER TABLE語(yǔ)句的用法。
9.用SQL刪除數(shù)據(jù)庫(kù)表,即DROP TABLE語(yǔ)句的使用。
10.CONSTRAINT子句的用法。
..........
(摘自第一篇:)
第一節(jié) SQL基礎(chǔ)知識(shí)
一、SQL是什么?
SQL是英語(yǔ)Structured Query Language的首字母縮寫(xiě),意思為結(jié)構(gòu)化查詢(xún)語(yǔ)言,正確的發(fā)音應(yīng)該是S-Q-L(“ess kyoo ell”),但很多講英語(yǔ)的數(shù)據(jù)庫(kù)專(zhuān)業(yè)人員把SQL發(fā)成sequel的音。
IBM在20世紀(jì)70年代開(kāi)發(fā)了一種叫做SEQUEL的語(yǔ)言,它是Structured English Query Language的首字母縮寫(xiě),設(shè)計(jì)這種語(yǔ)言是為了操縱存儲(chǔ)在數(shù)據(jù)庫(kù)系統(tǒng)Sytem R中的數(shù)據(jù),Sytem R基于Edgar F.Codd博士提出的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)模型。后來(lái),由于商標(biāo)之爭(zhēng),首字母SEQUEL被簡(jiǎn)化成SQL。ANSI在1986年選擇SQL作為一項(xiàng)標(biāo)準(zhǔn),ISO則在1987做了同樣的舉措。ANSI宣布該語(yǔ)言的正確發(fā)音是“ess kyoo ell”,但它好像并沒(méi)有被廣泛接受。
SQL是高級(jí)的非過(guò)程化編程語(yǔ)言,允許用戶(hù)在高層數(shù)據(jù)結(jié)構(gòu)上工作,它不要求用戶(hù)指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶(hù)了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng)可以使用相同的SQL語(yǔ)言作為數(shù)據(jù)輸入與管理的接口。它以記錄集合作為操作對(duì)象,所有SQL語(yǔ)句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語(yǔ)句的輸出作為另一條SQL語(yǔ)句的輸入,所以SQL語(yǔ)句可以嵌套,這使他具有極大的靈活性和強(qiáng)大的功能,在多數(shù)情況下,在其他語(yǔ)言中需要一大段程序?qū)崿F(xiàn)的功能只需要一個(gè)SQL語(yǔ)句就可以達(dá)到目的,這也意味著用SQL語(yǔ)言可以寫(xiě)出非常復(fù)雜的語(yǔ)句。
二、SQL簡(jiǎn)史
結(jié)構(gòu)化查詢(xún)語(yǔ)言(Structured Query Language)最早是IBM的圣約瑟研究實(shí)驗(yàn)室為其關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SYSTEM R開(kāi)發(fā)的一種查詢(xún)語(yǔ)言,它的前身是SQUARE語(yǔ)言。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來(lái),SQL語(yǔ)言得到了廣泛的應(yīng)用。如今無(wú)論是像Oracle、Sybase、Informix、SQL Server這些大型的數(shù)據(jù)庫(kù)管理系統(tǒng),還是像Visual Foxpro、PowerBuilder這些PC上常用的數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng),都支持SQL語(yǔ)言作為查詢(xún)語(yǔ)言。
美國(guó)國(guó)家標(biāo)準(zhǔn)局(ANSI)與國(guó)際標(biāo)準(zhǔn)化組織(ISO)已經(jīng)制定了SQL標(biāo)準(zhǔn)。ANSI是一個(gè)美國(guó)工業(yè)和商業(yè)集團(tuán)組織,負(fù)責(zé)開(kāi)發(fā)美國(guó)的商務(wù)和通訊標(biāo)準(zhǔn)。ANSI同時(shí)也是ISO和International Electrotechnical Commission(IEC)的成員之一。ANSI 發(fā)布與國(guó)際標(biāo)準(zhǔn)組織相應(yīng)的美國(guó)標(biāo)準(zhǔn)。1992年,ISO和IEC發(fā)布了SQL國(guó)際標(biāo)準(zhǔn),稱(chēng)為SQL-92。ANSI隨之發(fā)布的相應(yīng)標(biāo)準(zhǔn)是ANSI SQL-92。ANSI SQL-92有時(shí)被稱(chēng)為ANSI SQL。盡管不同的關(guān)系數(shù)據(jù)庫(kù)使用的SQL版本有一些差異,但大多數(shù)都遵循 ANSI SQL 標(biāo)準(zhǔn)。MS Access SQL使用ANSI SQL-89及ANSI SQL-92標(biāo)準(zhǔn),稱(chēng)為JET-SQL或ACE-SQL。
三、SQL的組成
SQL語(yǔ)言包含4個(gè)部分:
※ 數(shù)據(jù)定義語(yǔ)言(DDL),例如:Create、Drop、Alter等語(yǔ)句。
※ 數(shù)據(jù)操作語(yǔ)言(DML),例如:Insert(插入)、Update(修改)、Delete(刪除)語(yǔ)句。
※ 數(shù)據(jù)查詢(xún)語(yǔ)言(DQL),例如:Select語(yǔ)句。
※ 數(shù)據(jù)控制語(yǔ)言(DCL),例如:GRANT、REVOKE、COMMIT、ROLLBACK等語(yǔ)句。
Access數(shù)據(jù)庫(kù)執(zhí)行sql語(yǔ)句:新建-〉查詢(xún)?cè)O(shè)計(jì)-〉顯示表,此時(shí)把顯示表對(duì)話框關(guān)閉,點(diǎn)擊左上角的"SQL 視圖",打開(kāi)的窗口中輸入SQL 語(yǔ)句即可像SQL Server中一樣運(yùn)行SQL 語(yǔ)句。