版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三章、ASP應(yīng)用基礎(chǔ),第六講 ASP數(shù)據(jù)庫(kù)訪問技術(shù),6.1 常用的SQL命令,SQL是Structured Query Language的縮寫,也就是常說的結(jié)構(gòu)化查詢語(yǔ)言。使用SQL可以實(shí)現(xiàn)下面的功能:(1)修改表結(jié)構(gòu);(2)查詢表中的數(shù)據(jù)信息;(3)添加、刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù)內(nèi)容;(4)修改數(shù)據(jù)庫(kù)中的數(shù)據(jù)記錄。一、修改表結(jié)構(gòu) 在ASP中,可以通過使用SQL語(yǔ)句來修改現(xiàn)有的表結(jié)構(gòu)。修改表結(jié)構(gòu)的SQL命令是ALTER TABLE,該命令可以實(shí)現(xiàn)兩種形式的修改:在原有的表中添加一個(gè)或多個(gè)列;修改原表中已有列的屬性。語(yǔ)法如下: ALTER TABLE 表名 ADD 列名 數(shù)據(jù)類型 | MODIFY
2、列名 數(shù)據(jù)類型; 注:ADD表示添加新列,MODIFY表示修改已有的列。,6.1 常用的SQL命令,二、查詢表中的數(shù)據(jù)信息 查詢是數(shù)據(jù)庫(kù)應(yīng)用開發(fā)中最常用的操作,在SQL中,查詢操作是通過Select語(yǔ)句來完成的。 Select語(yǔ)句如下:Select From 表名 注:(1)Select語(yǔ)句還具有篩選的功能,即可以有選擇地輸出表中的記錄; (2)方法是在Select語(yǔ)句后面加上Where子句,加上篩選的條件; (3) Select語(yǔ)句還提供了Order By子句,通過使用該字句,可以改變輸出結(jié)果的排序方式, 格式:Select(目標(biāo)列) from(表) where(條件)Group by(列名
3、) having(條件)order by(列名) asc|desc,6.1 常用的SQL命令,三、添加、刪除數(shù)據(jù)庫(kù)中數(shù)據(jù) 實(shí)際操作中,將新記錄數(shù)據(jù)添加到數(shù)據(jù)庫(kù)中或某些記錄從數(shù)據(jù)庫(kù)中刪除,使用SQL語(yǔ)句中Insert語(yǔ)句和Delete語(yǔ)句。 注:(1)Insert語(yǔ)句的語(yǔ)法: Insert Into 表名 VALUES (將值1、值2等值分別賦值給列1、列2,并為表添加一條新的數(shù)據(jù)記錄) 或 Insert Into 表1名 Select From 表2名 Where 條件 (將一個(gè)或多個(gè)表的記錄輸入到另一個(gè)表中) (2)Delete語(yǔ)句的語(yǔ)法如下: Delete From 表名 Where 條件
4、 (若在Delete語(yǔ)句中加上Where條件,則該語(yǔ)句將刪除所有的記錄),6.1 常用的SQL命令,四、修改數(shù)據(jù)庫(kù)中的數(shù)據(jù)記錄 在使用過程中,有些數(shù)據(jù)記錄需要進(jìn)行修改,這時(shí)就可以使用SQL中的Update命令,進(jìn)行修改數(shù)據(jù)庫(kù)的記錄。 語(yǔ)法:Update 表名 Set 列1值1 ,列2值2 Where 條件 五、建立和刪除表 (1)建立表 語(yǔ)法:Create(表) (列名1)(數(shù)據(jù)類型),)其它參數(shù) (1)刪除表 語(yǔ)法:Drop Table(表),6.1 常用的SQL命令,六、添加數(shù)據(jù)、刪除、數(shù)據(jù)的修改(1)添加數(shù)據(jù)記錄方法:一種是利用SQL語(yǔ)句中的Insert命令來添加數(shù)據(jù)記錄;另一種是利用A
5、DO對(duì)象之一的Recordset對(duì)象的AddNew方法來添加數(shù)據(jù)記錄;(2)數(shù)據(jù)的刪除方式:一種就是運(yùn)行SQL語(yǔ)句中的Delete命令來刪除表中的數(shù)據(jù)記錄;另一種就是利用Recordset對(duì)象中的Delete方法來刪除數(shù)據(jù);(3)數(shù)據(jù)的修改方法:一種就是利用SQL語(yǔ)句中的Update命令來修改表中的數(shù)據(jù)記錄;另一種也是利用Recordset對(duì)象的Update或UpdateBatch方法來完成數(shù)據(jù)的修改。,6.1 常用的SQL命令,附:利用ACCESS建立火車查詢系統(tǒng)數(shù)據(jù)庫(kù),6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),一、網(wǎng)頁(yè)與數(shù)據(jù)庫(kù)的連接和集成一般有三種方法: (1)CGI(Common Gateway I
6、nterface公共網(wǎng)關(guān)接口)的方法; (2)Web通過處理器與數(shù)據(jù)庫(kù)進(jìn)行連接; (3)采用集成了ODBC(Open Database Connectivity開放數(shù)據(jù)互接)接口功能的Web服務(wù)器。 注:(1)對(duì)于一個(gè)ASP程序而言,它通常是通過ADO(ActiveX Data Objects )層或ODBC接口來訪問數(shù)據(jù)庫(kù)的; (2)ASP對(duì)數(shù)據(jù)庫(kù)的訪問過程:客戶端的瀏覽器向Web服務(wù)器提出ASP頁(yè)面文件請(qǐng)求(包括數(shù)據(jù)庫(kù)的操作);服務(wù)器把該頁(yè)面由ASP.DLL文件進(jìn)行解釋,并在服務(wù)器端運(yùn)行;完成數(shù)據(jù)庫(kù)的操作,再把數(shù)據(jù)庫(kù)操作的結(jié)果生成動(dòng)態(tài)的網(wǎng)頁(yè)返回給瀏覽器;瀏覽器再將該網(wǎng)頁(yè)內(nèi)容顯示在客戶端。,
7、6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),二、ODBC方法數(shù)據(jù)庫(kù)訪問操作的第一步是數(shù)據(jù)庫(kù)的連接。 (1)設(shè)置ODBC的方法來連接數(shù)據(jù)庫(kù); (2)直接指定ODBC驅(qū)動(dòng)程序來連接數(shù)據(jù)庫(kù); (3)設(shè)置Connection對(duì)象的Provider屬性來設(shè)置連接信息; (4)設(shè)置ActiveConnection參數(shù),完成對(duì)數(shù)據(jù)源連接的設(shè)置。 例:會(huì)員注冊(cè)系統(tǒng) (1)設(shè)置ODBC系統(tǒng)DSN;(BBS.dmb,登錄名、密碼:feng) (2)Register.htm, Register.asp,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),應(yīng)用程序,ODBC API,DBASE驅(qū)動(dòng)程序,DBASE數(shù)據(jù)庫(kù),Aceess驅(qū)動(dòng)程序,Sql S
8、erver 驅(qū)動(dòng)程序,Oracle驅(qū)動(dòng)程序,Aceess數(shù)據(jù)庫(kù),Sql Server數(shù)據(jù)庫(kù),Oracle數(shù)據(jù)庫(kù),6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),三、數(shù)據(jù)的查詢 數(shù)據(jù)的查詢主要是利用ADO對(duì)象中的Connection對(duì)象和Recordset對(duì)象 。使用SQL語(yǔ)句中的Select語(yǔ)句,采用了Select語(yǔ)句對(duì)表進(jìn)行了篩選。 主要利用Recordset對(duì)象的PageSize屬性來控制每一頁(yè)所要顯示的數(shù)據(jù)記錄條數(shù)以及AbsolutePosition屬性來記錄數(shù)據(jù)指針的位置;也可以通過Session對(duì)象,讓查詢程序以一頁(yè)或一條為單位進(jìn)行查詢操作。,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),四、ADO(ActiveX
9、Data Objects) (1)ASP通過ADO對(duì)象訪問數(shù)據(jù)庫(kù) (2)ADO的主要對(duì)象及相關(guān)信息:,注冊(cè)文件:Msado15.dll,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),Asp工作示意圖,瀏覽器,Web服務(wù)器 IIS/PWS,使用ADO對(duì)象的.ASP文件,ODBC或OLE DB 驅(qū)動(dòng)程序,數(shù)據(jù)庫(kù),6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),五、創(chuàng)建對(duì)象實(shí)例: 創(chuàng)建ActiveX組件的實(shí)例 Set 對(duì)象名=Server.CreateObject(ProgID),使用Set命令為實(shí)例命名,例:定義聯(lián)機(jī)對(duì)象 ,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),六、數(shù)據(jù)庫(kù)的鏈接及安全性設(shè)置 1、定義聯(lián)機(jī)對(duì)象: 2、打開鏈接: 注:鏈接字符
10、串:包含鏈接數(shù)據(jù)庫(kù)的名稱、訪問帳號(hào)和密碼 例: 注:OLEDB:Object Linking and Embedding Data Base,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),七、Recordset對(duì)象 1、定義Recordset對(duì)象 ,數(shù)據(jù)表名稱,指定已申明的Connection對(duì)象,1:只讀2:編輯鎖定3:調(diào)用Update鎖定4:批次更新鎖定,0:向前移動(dòng)1:不讀其它用戶數(shù)據(jù)2:實(shí)時(shí)反映其它用戶數(shù)據(jù)3:不能實(shí)時(shí)反映其它用戶數(shù)據(jù),6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),2、實(shí)例1: 聲明Connection(數(shù)據(jù)庫(kù)鏈接)對(duì)象 ,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),實(shí)例2:聲明Recordset對(duì)象 實(shí)例3: ,
11、6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),附:幾種數(shù)據(jù)庫(kù)的連接方法: (1)MS Access ODBC DSNless 連接: 參數(shù):Driver 設(shè)置值:Microsoft Access Driver (*.mdb) 參數(shù):Dbq 設(shè)置值:實(shí)際路徑文件名稱 例: “Driver=Microsoft Access Driver (*.mdb); Dbq=c:somepathdbname.mdb;Uid=Admin; Pwd=pass; ” (2)dBase ODBC DSNless 連接: 參數(shù):Driver 設(shè)置值:Microsoft dBASE Driver (*.dbf) 參數(shù):Dbq 設(shè)置值:實(shí)
12、際路徑文件名稱 例:“Driver=Microsoft dBASE Driver (*.dbf); DriverID=277;Dbq=c:somepathdbname.dbf; ”,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),(3)Visual Foxpro DSNless 連接: 參數(shù):Driver 設(shè)置值:Microsoft Visual FoxPro Driver 參數(shù):SourceType 設(shè)置值:DBC 參數(shù):SourceDB 設(shè)置值:實(shí)際路徑文件名稱 例: “Driver=Microsoft Visual FoxPro Driver; SourceType=DBC;SourceDB=c:some
13、pathdbname.dbc; Exclusive=No;” (4)MS SQL Server DSNless 連接: 參數(shù):Driver 設(shè)置值:SQL Server; 參數(shù):Server 設(shè)置值:服務(wù)器名稱 參數(shù):Database 設(shè)置值:數(shù)據(jù)表名稱 參數(shù):Uid 設(shè)置值:用戶名稱 參數(shù):Pwd 設(shè)置值:密碼 例:“Driver=SQL Server; Server=servername;Database=dbname;Uid=sa;Pwd=pass; ”,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),(5)MS Text Driver DSNless 連接: 參數(shù):Driver 設(shè)置值:Microsof
14、t Text Driver (*.txt; *.csv) 參數(shù):Dbq 設(shè)置值:實(shí)際路徑文件名稱 例: “Driver=Microsoft Text Driver (*.txt; *.csv); Dbq=c:somepath;Extensions=asc,csv,tab,txt;Persist Security Info=False; ” (6)MySQL DSNless 連接: 參數(shù):Driver 設(shè)置值:mysql 參數(shù):database 設(shè)置值:數(shù)據(jù)表名稱 參數(shù):uid 設(shè)置值:用戶名稱 參數(shù):pwd 設(shè)置值:密碼 例:“driver=mysql; database=yourdataba
15、se; uid=username;pwd=password;option=16386”,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),3、Recordset對(duì)象的屬性和函數(shù)(常見) Recordset.RecordCount:記錄數(shù)目 Recordset(“字段”):數(shù)據(jù)內(nèi)容 Recordset.PageSize Recordset.PageCount 每頁(yè)數(shù)據(jù)條數(shù),總頁(yè)數(shù),頁(yè)數(shù)或跳板至某頁(yè) Recordset.AbsolutePage Recordset.MoveFirst Recordset.MoveLast 數(shù)據(jù)移至第一條,最后一條,后一條,前一條 Recordset.MoveNext Recordse
16、t.Previous Recordset.bof Recordset.eof 是否超過頂端或末端,6.2 ASP訪問數(shù)據(jù)庫(kù)技術(shù),4、實(shí)例 例:票務(wù)查詢系統(tǒng) 例:分頁(yè)留言系統(tǒng),ASP對(duì)數(shù)據(jù)庫(kù)的訪問是可以通過ADO模式來實(shí)現(xiàn)。ADO對(duì)象給開發(fā)人員提供了一種快捷、簡(jiǎn)單、高效的數(shù)據(jù)庫(kù)訪問方法,ADO可以包含在腳本中來產(chǎn)生對(duì)數(shù)據(jù)庫(kù)的連接,并從數(shù)據(jù)庫(kù)表中讀取記錄,形成實(shí)際要使用的對(duì)象集合。而且,對(duì)數(shù)據(jù)資源,如數(shù)據(jù)庫(kù),ADO提供了應(yīng)用程序一級(jí)的界面。,6.3 附:ADO,ADO對(duì)象主要是由Connection對(duì)象、Command對(duì)象、Parameter對(duì)象、Recordset對(duì)象、Field對(duì)象、Prope
17、rty對(duì)象、Error對(duì)象等七個(gè)對(duì)象,以及Fields數(shù)據(jù)集合、Properties數(shù)據(jù)集合、Parameters數(shù)據(jù)集合、Error數(shù)據(jù)集合等四個(gè)數(shù)據(jù)集合所組成。 在介紹ADO的七個(gè)對(duì)象和四個(gè)數(shù)據(jù)集合后,下面將用圖表的關(guān)系來介紹一下。,6.3 附:ADO,6.3 附:ADO,在ASP中,Connection對(duì)象是網(wǎng)頁(yè)通過ADO存取數(shù)據(jù)庫(kù)的關(guān)鍵,Connection對(duì)象負(fù)責(zé)與數(shù)據(jù)庫(kù)實(shí)際的連接動(dòng)作,其它的對(duì)象都是必須依賴與Connection對(duì)象的連接才能發(fā)揮其特有的功能。Connection對(duì)象代表與數(shù)據(jù)源進(jìn)行的唯一會(huì)話。 在成功安裝ASP與Web服務(wù)器后,就可以使用ASP Server對(duì)象的
18、CreateObject方法來創(chuàng)建Connection對(duì)象,語(yǔ)法如下: Set Conn = Server.CreateObject(“ADODB.Connect”) 注:Connection對(duì)象的方法包括:Open、Execute、Close、Cancel、Save、BeginTrans、CommitTrans、RollbackTrans等方法。,6.4 附:Connection對(duì)象,Connection對(duì)象的屬性包括Attributes、CommandTimeout、ConnectionString、ConnectionTimeout、CursorLocation、DefaultDatab
19、ase、IsolationLevel、Mode、Provider、State、Version等屬性。 Connection對(duì)象提供Properties 、 Errors兩種數(shù)據(jù)集合。前者表示Connection對(duì)象運(yùn)行是最近一次的錯(cuò)誤或警告信息,后者表示Connection對(duì)象所定義的相關(guān)屬性。,6.4 附:Connection對(duì)象,6.5 附:Command對(duì)象,Command對(duì)象負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)提供請(qǐng)求,也就是傳遞指定的SQL命令。使用Command對(duì)象可以查詢數(shù)據(jù)庫(kù)并返回Recordset對(duì)象中的記錄,以便執(zhí)行大量操作或處理數(shù)據(jù)庫(kù)結(jié)構(gòu)。 使用該對(duì)象不僅能夠?qū)σ话愕臄?shù)據(jù)庫(kù)信息進(jìn)行操作,還因?yàn)閷?duì)象可以帶輸入、輸出參數(shù),從而可以完成對(duì)數(shù)據(jù)庫(kù)存貯過程的調(diào)用。,Command對(duì)象可以使用Execute方法來執(zhí)行SQL語(yǔ)句或?qū)?shù)據(jù)庫(kù)存儲(chǔ)過程的調(diào)用,或創(chuàng)建一個(gè)RecordSet對(duì)象。 Command對(duì)象還包括一個(gè)Parameter集合,使用該集合,可以將數(shù)據(jù)庫(kù)存儲(chǔ)過程的參數(shù)與集合中各項(xiàng)元素相對(duì)應(yīng),而且存儲(chǔ)過程的輸出值也作為一個(gè)參數(shù)被包含在Parameter集合中,從而簡(jiǎn)化對(duì)存儲(chǔ)過程的調(diào)用。,6.5
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 刀剪制作工安全行為測(cè)試考核試卷含答案
- 地層測(cè)試工安全綜合能力考核試卷含答案
- 煉焦工安全實(shí)踐競(jìng)賽考核試卷含答案
- 家禽繁殖員崗前理論綜合考核試卷含答案
- 綠化造園工崗前安全宣教考核試卷含答案
- 經(jīng)編工10S執(zhí)行考核試卷含答案
- 傳輸機(jī)務(wù)員崗前內(nèi)部考核試卷含答案
- 海創(chuàng)環(huán)保安全培訓(xùn)
- 海關(guān)aeo培訓(xùn)法律法規(guī)
- 橋梁工程知識(shí)培訓(xùn)講座
- 云南省昆明市2026屆高三三診一模摸底診斷測(cè)試化學(xué)試卷(含答案)
- 2026年1月浙江省高考(首考)化學(xué)試題(含標(biāo)準(zhǔn)答案及解析)
- 老年患者多病共存精準(zhǔn)管理策略
- 四川省遂寧市2026屆高三上學(xué)期一診考試英語(yǔ)試卷(含答案無(wú)聽力音頻有聽力原文)
- 福建省寧德市2025-2026學(xué)年高三上學(xué)期期末考試語(yǔ)文試題(含答案)
- 建筑施工行業(yè)2026年春節(jié)節(jié)前全員安全教育培訓(xùn)
- 2026屆高考語(yǔ)文復(fù)習(xí):小說人物形象復(fù)習(xí)
- 2026及未來5年中國(guó)防病毒網(wǎng)關(guān)行業(yè)市場(chǎng)全景調(diào)查及發(fā)展前景研判報(bào)告
- 2026年山東省煙草專賣局(公司)高校畢業(yè)生招聘流程筆試備考試題及答案解析
- 附圖武陵源風(fēng)景名勝區(qū)總體規(guī)劃總平面和功能分區(qū)圖樣本
- 八年級(jí)下冊(cè)《昆蟲記》核心閱讀思考題(附答案解析)
評(píng)論
0/150
提交評(píng)論