明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

網(wǎng)絡數(shù)據(jù)庫設計基礎

[摘要](一)這一教程是對網(wǎng)絡數(shù)據(jù)庫設計的一個入門介紹,簡要地介紹了SQL語言的基礎以及如何使用MS ACCESS和MS SQL SEVER建立網(wǎng)絡數(shù)據(jù)庫。通過本教程的學習,你可以建立、訪問和操作你的數(shù)據(jù)庫,可以學會如何使用SQL語句檢索、增加、更新、刪除數(shù)據(jù)庫表中的內(nèi)容。這對于任何有關數(shù)據(jù)庫的操作和開發(fā)...

(一)這一教程是對網(wǎng)絡數(shù)據(jù)庫設計的一個入門介紹,簡要地介紹了SQL語言的基礎以及如何使用MS ACCESS和MS SQL SEVER建立網(wǎng)絡數(shù)據(jù)庫。通過本教程的學習,你可以建立、訪問和操作你的數(shù)據(jù)庫,可以學會如何使用SQL語句檢索、增加、更新、刪除數(shù)據(jù)庫表中的內(nèi)容。這對于任何有關數(shù)據(jù)庫的操作和開發(fā)都具有重要意義。



1.1 SQL語言簡介



1.1.1 SQL語言及其優(yōu)點



1.1.2 SQL語言的分類及語法



1.2 中小型關系型數(shù)據(jù)庫簡介



1.2.1 關系型數(shù)據(jù)庫簡介



1.2.2 Access數(shù)據(jù)庫及其基本操作



1.2.3 SQL Server數(shù)據(jù)庫及其基本操作



1.3 ODBC與ADO對象



1.3.1 ASP訪問數(shù)據(jù)庫的幾種方式



1.3.2 創(chuàng)建和配置ODBC數(shù)據(jù)源



1.3.3 用ADO實現(xiàn)訪問數(shù)據(jù)庫



1.1 SQL語言簡介



SQL是英文(Structured Query Language)的縮寫,意思為結構化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進行溝通。按照ANSI(美國國家標準協(xié)會)的規(guī)定,SQL被作為關系型數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句可以用來執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關系型數(shù)據(jù)庫管理系統(tǒng),如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL語言標準。

SQL語言及其優(yōu)點





1.1.1 SQL語言及其優(yōu)點



首先,讓我們來了解一下使用SQL語言的優(yōu)點:



● 非過程化語言



● 統(tǒng)一的語言



● 是所有關系數(shù)據(jù)庫的公共語言



1.非過程化語言



SQL是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導航。SQL允許用戶在高層的數(shù)據(jù)結構上工作,而不對單個記錄進行操作,可操作記錄集,所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。



SQL不要求用戶指定對數(shù)據(jù)的存放方法, 這種特性使用戶更易集中精力于要得到的結果;所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引。



2.統(tǒng)一的語言



SQL可用于所有用戶的DB活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、 應用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。基本的SQL 命令只需很少時間就能學會,最高級的命令在幾天內(nèi)便可掌握。



SQL為許多任務提供了命令,其中包括:



● 查詢數(shù)據(jù)



● 在表中插入、修改和刪除記錄



● 建立、修改和刪除數(shù)據(jù)對象



● 控制對數(shù)據(jù)和數(shù)據(jù)對象的存取



● 保證數(shù)據(jù)庫一致性和完整性



以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨的語言,而SQL 將全部任務統(tǒng)一在一種語言中。



3.是所有關系數(shù)據(jù)庫的公共語言



由于所有主要的關系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS(關系數(shù)據(jù)庫管理系統(tǒng))轉到另一個,所有用SQL編寫的程序都是可以移植的。

SQL語言的分類及語法



1.1.2 SQL語言的分類及語法



可執(zhí)行的SQL語句的種類數(shù)目之多是驚人的。使用SQL,你可以執(zhí)行任何功能:從一個簡單的表查詢,到創(chuàng)建表和存儲過程,到設定用戶權限。在這個章節(jié)中,我們將重點講述如何從數(shù)據(jù)庫中檢索、更新和報告數(shù)據(jù),也是基于這個目的,我們應該了解的最重要的SQL語句是:



● SELCET



● INSERT



● UPDATE



● DELETE



● CREAT



● DROP



以上這些命令可簡要描述如表1.1所示,這些命令看起來并不困難,在下面的例子中,我們將在實例中應用這些命令,了解其功能。



表1.1 重要的SQL語句


1.SELECT語句語法


表1.2 SELECT語句的組件


下面我們對這個重要的語句語法進行示例講解,需要說明的是這一章節(jié)中所涉及到的例子都是基于圖1.1描述的表結構。


圖1.1 在test數(shù)據(jù)庫中的authors表的結構


● 一個簡單的SELECT語句:


SELECT id,name,phone,zip


From authors


這個簡單的查詢的結果得出的內(nèi)容為authors表中返回的選定列的數(shù)據(jù)。在同樣的檢索情況下,如果你想縮小范圍,比如只想知道住在福州鼓樓地區(qū)(郵編為350002)的作者的名字,你可以接著看后面的例子;


● 添加WHERE子句


SELECT id,name,phone,zip


From authors


WHERE zip = ‘350002’


在檢索表行時,WHERE子句可以使用多個列作為約束內(nèi)容,當然在檢索約束內(nèi)容中還可以加入通過AND、OR以實現(xiàn)多個約束。另外,在SELECT語句中我們還可以通過更改比較操作符來改變約束的條件,以達到我們需要的檢索目的。我們再看一個例子;


● 完整約束查詢


SELECT id,name,phone,zip


From authors


WHERE zip <> ‘350002’AND phone = ‘1234567’


這個例子查詢結果返回的是住在福州鼓樓地區(qū)以外(郵編號不為350002)的且電話號碼為1234567的作者的資料。


表1.3 SELECT語句中支持的比較操作符


● 添加ORDER BY子句


SELECT id,name,phone,zip


From authors


WHERE zip = ‘350002 ‘


ORDER BY id


這樣,這條SQL語句返回的結果將id列的升序排序。

2.INSERT語句語法


表1.4 INSERT語句的組件


● 一個簡單的INSERT語句:


INSERT INTO authors


valueS


(‘FZ1234’,’張三’,’1234567’,’深圳幸運計算機公司’,’350002’,’本文作者’)


這樣,便向表中加入了一條記錄。


我們也可以指明用哪幾列來填充,看下面的例子;


● 一個簡單的INSERT語句:


INSERT INTO authors(id,name,phone)


valueS (‘FZ3456’,’李四’,’7654321’)


通過上面兩個例子的方法,我們就可以往數(shù)據(jù)庫中添加內(nèi)容了,需要注意的是,我們插入值(包含在valueS部分中的)要按照INSERT INTO 部分中指明的列的順序,或是在未指明的條件下按照數(shù)據(jù)庫原始各列的順序。


3.UPDATE語句語法


表1.3 UPDATE語句的組件


● 將列設定為確定值:


UPDATE authors


SET zip = ‘350003’


WHERE id = ‘FZ4567’


通過這個語句我們可以把數(shù)據(jù)庫中id為 FZ4567 的條記錄的zip列的值改為 350003。這時如果我們無法給出確定的值,比如我們要給 id 為 FZ1234 的那位作者加薪 100 元,則可以這樣改寫SQL語句語句;


● 基于已有的值來設置新的列值


UPDATE authors


SET salary = salary + 100


WHERE id = ‘FZ1234’


這樣,即使不知道authors表中的salary列值,也可以用一條簡單的UPDATE語句成功地把薪水增加 100。


1.DELETE語句語法


表1.4 DELETE語句的組件


● 刪除一個表中的所有值:


DELETE FROM authors


這條語句的執(zhí)行結果是刪除authors表中的所有行。


● 刪除一個表中的指定的行


DELETE FROM authors


WHERE id = ‘FZ1234’


這條語句的執(zhí)行結果是刪表authors中id為 FZ1234 的行。


在前面的一部分內(nèi)容中我們講述了最常用的SQL語句的基本方法,但這只是SQL語句的一部分,其它的SQL語句由于不常用就不一一講述了。各位讀者如果有興趣可以參考一些專門的SQL語法資料,這將能使你更好地操縱數(shù)據(jù)庫,更好地通過數(shù)據(jù)庫來幫助你完成你的工作。