六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

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

數(shù)據(jù)庫查詢語言(1)

[摘要]原定計劃從本篇開始就要給大家介紹 ASP 內(nèi)建的 ActiveX 組件,但是考慮到我們在往后的學(xué)習(xí)中將會接觸到大量的數(shù)據(jù)庫查詢,因此作者臨時決定花一到兩篇的篇幅向大家簡要介紹一些數(shù)據(jù)庫查詢語言的基本知識,這其實也是學(xué)習(xí) ASP 所必須掌握的一門知識。是否能夠靈活地運用數(shù)據(jù)庫查詢語言,將直接關(guān)系到 ...

原定計劃從本篇開始就要給大家介紹 ASP 內(nèi)建的 ActiveX
組件,但是考慮到我們在往后的學(xué)習(xí)中將會接觸到大量的數(shù)據(jù)庫查詢,因此作者臨時決定花一到兩篇的篇幅向大家簡要介紹一些數(shù)據(jù)庫查詢語言的基本知識,這其實也是學(xué)習(xí)
ASP
所必須掌握的一門知識。是否能夠靈活地運用數(shù)據(jù)庫查詢語言,將直接關(guān)系到
ASP 程序的執(zhí)行效率等一系列問題,所以請各位務(wù)必重視。


相信很多朋友都聽說過 SQL
這個名字,如果你是計算機(jī)方面的行家,SQL
的大名一定是如雷貫耳。那么 SQL 究竟是什么呢?SQL 一詞實際上是
"Structured Query Language"
結(jié)構(gòu)式查詢語言的縮寫,是用于對存放在計算機(jī)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行組織、管理和檢索的一種工具;是一種特定類型的數(shù)據(jù)庫
-- 關(guān)系數(shù)據(jù)庫。而控制這種數(shù)據(jù)庫的計算機(jī)程序就是我們常說的
DBMS-- 數(shù)據(jù)庫管理系統(tǒng)。譬如:SQL Server、Oracle、Sybase、DB2
等等。當(dāng)用戶想要檢索數(shù)據(jù)庫中的數(shù)據(jù)時,就通過 SQL
語言發(fā)出請求,接著 DBMS 對該 SQL
請求進(jìn)行處理并檢索所要求的數(shù)據(jù),最后將其返回給用戶,此過程被稱作為數(shù)據(jù)庫查詢,這也就是數(shù)據(jù)庫查詢語言這一名稱的由來。


SQL 并不是象 C、COBOL 和 Fortran 語言那樣的完整的計算機(jī)語言。SQL
沒有用于條件測試的 IF 語句,也沒有用于程序分支的 Goto
語句以及循環(huán)語句 For 或 Do。確切的講,SQL 是一種數(shù)據(jù)庫子語言,SQL
語句可以被嵌入到另一種語言中,從而使其具有數(shù)據(jù)庫存取功能。SQL
也非嚴(yán)格的結(jié)構(gòu)式語言,它的句法更接近英語語句,因此易于理解,大多數(shù)
SQL 語句都是直述其意,讀起來就象自然語言一樣明了。SQL
還是一種交互式查詢語言,允許用戶直接查詢存儲數(shù)據(jù),利用這一交互特性,用戶可以在很短的時間內(nèi)回答相當(dāng)復(fù)雜的問題,而同樣問題若讓程序員編寫相應(yīng)的報表程序則可能要用幾個星期甚至更長時間。


在大部分 ASP 應(yīng)用程序中我們都會接觸到數(shù)據(jù)庫,而我們在編寫
ASP 應(yīng)用程序時用來進(jìn)行數(shù)據(jù)庫操作的標(biāo)準(zhǔn)語法正是 SQL,因此 SQL
語法的重要性是不言而喻的。下面,我們就從最常用的 SQL 語句 SELECT
著手,一步一步地來學(xué)習(xí) SQL。


查詢是 SQL 語言的核心,而用于表達(dá) SQL 查詢的 SELECT
語句則是功能最強(qiáng)也是最為復(fù)雜的 SQL
語句,它從數(shù)據(jù)庫中檢索數(shù)據(jù),并將查詢結(jié)果提供給用戶。在本文中我們將建立一個名為
tianjiao 的簡單數(shù)據(jù)庫,該庫中存放了一個叫 sales
的銷售記錄表,如下所示 :






姓名
性別
工資
銷售目標(biāo)
銷售額
地區(qū)



書生

2500
8000
9000
上海



吳冠軍

3000
10000
9999
北京



雷鳴

2000
8000
10000
四川



雪兒

2500
5000
6000
廣州



顧一

2600
9000
9800
大連



阿卓

2000
4000
4000
天津



熠天

4000
20000
20000
全國





在該表中有六列即六個字段 :
姓名、性別、工資、銷售目標(biāo)、銷售額、地區(qū),首先我們用 Select
語句列出姓名、銷售目標(biāo)和銷售額 :



Select 姓名,銷售目標(biāo),銷售額 From sales



結(jié)果如下 :






姓名
銷售目標(biāo)
銷售額



書生
8000
9000



吳冠軍
10000
9999



雷鳴
8000
10000



雪兒
5000
6000



顧一
9000
9800



阿卓
4000
4000



熠天
20000
20000





然后,我們再列出所有男性的姓名、銷售目標(biāo)和銷售額 :



Select 姓名,銷售目標(biāo),銷售額 From sales Where 性別 =" 男
"



結(jié)果如下 :






姓名
銷售目標(biāo)
銷售額



書生
8000
9000



吳冠軍
10000
9999



雷鳴
8000
10000



顧一
9000
9800



熠天
20000
20000














接下來,我們做一個相對復(fù)雜的查詢,列出銷售額大于銷售目標(biāo)的所有男性的姓名、銷售目標(biāo)和銷售額,并且按銷售目標(biāo)排序。


Select 姓名,銷售目標(biāo),銷售額

Form sales

Where 銷售額 > 銷售目標(biāo)

And 性別 =" 男 "

Order By 銷售目標(biāo)



結(jié)果如下 :





姓名
銷售目標(biāo)
銷售額



書生
8000
9000



雷鳴
8000
10000



顧一
9000
9800



熠天
20000
20000





大家可以看到,對于簡單查詢,SQL Select
語句和英文語法很相象,我們來分析一下 SELECT
語句的完整格式,它包括六個子句,其中 SELECT 和FROM
子句是必須的,其它子句可以任選,每個子句的功能如下 :




1、Select 子句列出所有要求 SELECT 語句檢索的數(shù)據(jù)項。它放在
SELECT
語句開始處,指定此查詢要檢索的數(shù)據(jù)項。這些數(shù)據(jù)項通常用選擇表表示,即一組用“,”隔開的選擇項。按照從左到右的順序,每個選擇項產(chǎn)生的一個列的查詢結(jié)果,一個選擇項可能是以下項目:


(1)、列名:標(biāo)識 FROM
子句指定表中的列。如果列名作為選擇項,則 SQL
直接從數(shù)據(jù)庫表中每行取出該列的值,再將其放在查詢結(jié)果的相應(yīng)行中。




(2)、常數(shù):指定在查詢結(jié)果的每行中都放上該值。



(3)、SQL
表達(dá)式:說明必須將要放入查詢結(jié)果中的值按表達(dá)式的規(guī)定進(jìn)行計算。




2、From 子句列出包含所要查詢數(shù)據(jù)的表,它由關(guān)鍵字 FROM
后跟一組用逗號分開的表名組成。每個表明都代表一個包括該查詢要檢索數(shù)據(jù)的表。這些表稱為此
SQL 語句的表源,因為查詢結(jié)果都源于它們。



3、Where 子句告訴 SQL
只查詢某些行中的數(shù)據(jù),這些行用搜索條件描述。



4、Group By
子句指定匯總查詢,即不是對每行產(chǎn)生一個查詢結(jié)果,而是將相似的行進(jìn)行分組,再對每組產(chǎn)生一個匯總結(jié)果。




5、Having 子句告訴 SQL 只產(chǎn)生有 Group By
得到的某些組的結(jié)果,和 Where
子句一樣,所需要的組也用一個搜索條件指定。



6、Order By
子句將查詢結(jié)果按一列或多列中的數(shù)據(jù)排序。如果省略此子句,則查詢結(jié)果將是無序的。




下面作者將提供一個簡單但實用的運用 SQL 語句查詢的 ASP
程序供大家參考。



為了使大家更清楚更直接地了解 SQL 語法在 ASP
中的應(yīng)用,我們先將查詢的所有核心過程寫成一個名為 query2table 的SUB,然后利用
ASP 的服務(wù)器端包容功能調(diào)用該 SUB。請將以下語句剪貼到記事簿,保存為
subdbtable.inc 文件,并置于虛擬目錄 asptest 下:




< %

sub query2table(inputquery)

set conntemp=server.createobject("adodb.connection")

conntemp.open "DSN=Student;uid=student;pwd=aspmagic"

set rstemp=conntemp.execute(inputquery)

howmanyfields=rstemp.fields.count -1

' 統(tǒng)計數(shù)據(jù)庫中的列數(shù)

%>

< table border=1>< tr>

< %

for I=0 to howmanyfields

%>

< td>< b>< %=rstemp(I).name%>< /B>< /TD>

< % next %>

< /tr>

< %

do while not rstemp.eof

%>

< tr>

< % for I = 0 to howmanyfields

thisvalue=rstemp(I)

If isnull(thisvalue) then

thisvalue="?

' 如果字段為空,則將變量 thisvalue 的值定義為一個空格

end if%>

< td valign=top>< %=thisvalue%>< /td>

< % next %>

< /tr>

< %rstemp.movenext

loop%>

< /table>

< %

rstemp.close

set rstemp=nothing

conntemp.close

set conntemp=nothingend sub%>


完成了 SUB 的定義過程,在下面幾個 ASP
程序中我們只要加入想要使用的 SQL
查詢語句,并調(diào)用該過程就可以非常方便的得到查詢結(jié)果。將以下四段代碼分別保存為
asp11a.asp、asp11b.asp、asp11c.asp、asp11d.asp 四個 .asp 文件。


< HEAD>< TITLE>asp11a.asp< /TITLE>< /HEAD>

< HTML>< body bgcolor="#FFFFFF">

< %

call query2table("select * from publishers where name like 'A%%'")

' 將表 publishers 中所有姓名中有字母 A 的記錄查詢出來

%>

< !--#include virtual="/asptest/subdbtable.inc"-->< /BODY><
/HTML>



< HEAD>< TITLE>asp11b.asp< /TITLE>< /HEAD>< HTML><
body bgcolor="#FFFFFF">

< %

call query2table("select * from titles where Year_Published > = 1998")

' 將表 titles 中所有發(fā)表年份大于或等于 1998 年的記錄查詢出來

%>

< !--#include virtual="/asptest/subdbtable.inc"-->< /BODY><
/HTML>



< HEAD>< TITLE>asp11c.asp< /TITLE>< /HEAD>< HTML><
body bgcolor="#FFFFFF">

< %

call query2table("select * from publishers where amount>10000 and
sex='male'")

' 將表 publishers 中所有數(shù)量大于 10000 且性別為男的記錄查詢出來

%>

< !--#include virtual="/asptest/subdbtable.inc"-->< /BODY><
/HTML>



< HEAD>< TITLE>asp11d.asp< /TITLE>< /HEAD>< HTML><
body bgcolor="#FFFFFF">

< %

call query2table("select * from publishers where state< > 'NY'")

'將表 publishers 中所有所在城市不為紐約的記錄查詢出來。

%>

< !--#include virtual="/asptest/subdbtable.inc"-->< /BODY><
/HTML>


利用 subdbtable.inc 文件中的所定義的過程 query2table,你就可以非常迅速地對數(shù)據(jù)庫進(jìn)行查詢,你所要做的只是將“conntemp.open
"DSN=Student;uid=student;pwd=aspmagic"”中的數(shù)據(jù)庫名稱、用戶身份和密碼稍加改動,并在調(diào)用
query2table 時輸入想要使用的 SQL 查詢語句即可。是不是很簡單 ?
這就是 ASP 和 SQL 的魅力所在 !!!


今天,我們雖然用了一整篇的篇幅只學(xué)習(xí)了一個 SQL
指令,但請你相信你所獲得遠(yuǎn)不同于一個 DOS 指令,SELECT
指令使得你可以非常容易地對數(shù)據(jù)庫進(jìn)行查詢,或許在這之前你對數(shù)據(jù)庫查詢還一無所知,但是通過本篇的學(xué)習(xí),你其實已經(jīng)會使用
ASP 進(jìn)行常用的數(shù)據(jù)庫查詢了,是不是很激動 ?
在下一篇中,作者將繼續(xù)給大家介紹 SQL
的其它幾個基本指令。在結(jié)束本文之前,作者在這里要向很多來信的朋友致歉,由于最近作者工作繁忙,實在無暇一一回答各位的問題,請見諒,我會盡量將一些常見的、發(fā)生頻率較高的問題在文章中寫出來,至于一些不常見的問題,我建議大家到下面這個站點提問,你將會得到及時的答復(fù)。Www.onlinechina.net/friend/flybird/bbs/wwwboard.asp?id=1,
這是作者至今為止所見的最棒的中文 ASP
學(xué)習(xí)站點,由上海的飛鳥主持,大家務(wù)必去看看。(出處:熱點網(wǎng)絡(luò))


主站蜘蛛池模板: 青青伊人精品 | 亚洲成人娱乐网 | 五月婷婷激情在线 | 日韩欧美精品中文字幕 | 亚洲欧美手机在线观看 | 伊人免费在线观看 | 欧美性黑人极品hd网站 | 日韩欧美亚洲乱码中文字幕 | 性生生活三级视频观看 | 视频在线二区 | 色综合色综合色综合色综合 | 亚洲第一区精品观看 | 亚洲久草视频 | 日韩大片免费看 | 酥酥影院一级毛片在线看 | 色五月激情五月 | 色噜噜狠狠大色综合 | 天天操狠狠操 | 日韩美视频网站 | 日韩欧美高清视频 | 亚洲视频色 | 欧美综合中文字幕久久 | 四虎精品福利视频精品 | 欧美一级大片 | 婷婷丁香五月中文字幕 | 日本在线视频免费观看 | 色播放| 日韩欧美视频一区二区 | 视色视频在线观看 | 亚欧乱色束缚一区二区三区 | 日韩一级黄色 | 日产精品卡二卡三卡四卡乱码视频 | 在线视频你懂的国产福利 | 日本欧美视频在线观看 | 日韩在线视频第一页 | 亚洲欧美视频在线播放 | 青草视频免费观看在线观看 | 四虎影院免费观看视频 | 欧美视频在线观看xxxx | 五月婷婷深爱 | 青青青免费观看在线视频网站 |