ASP存取數(shù)據(jù)庫(kù)ppt課件_第1頁(yè)
ASP存取數(shù)據(jù)庫(kù)ppt課件_第2頁(yè)
ASP存取數(shù)據(jù)庫(kù)ppt課件_第3頁(yè)
ASP存取數(shù)據(jù)庫(kù)ppt課件_第4頁(yè)
ASP存取數(shù)據(jù)庫(kù)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩120頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、ASPASP存取數(shù)據(jù)庫(kù)存取數(shù)據(jù)庫(kù) 某網(wǎng)站的導(dǎo)航內(nèi)容需要根據(jù)用戶的需求進(jìn)行刪除、添加、修正?,F(xiàn)在由你擔(dān)任程序員,你將如何來實(shí)現(xiàn)網(wǎng)絡(luò)導(dǎo)航部分的實(shí)現(xiàn)和維護(hù)? 方案一:方案一:daohan.htmldaohan.html,維護(hù)功能由程序員修改,維護(hù)功能由程序員修改htmlhtml代碼來實(shí)現(xiàn)。代碼來實(shí)現(xiàn)。 方案一:方案一:Index.aspIndex.asp,維護(hù)工作由管理員在客戶端界面即可簡(jiǎn)單方,維護(hù)工作由管理員在客戶端界面即可簡(jiǎn)單方便的完成,不需要對(duì)源程序進(jìn)行修改。便的完成,不需要對(duì)源程序進(jìn)行修改。 ASPASP存取數(shù)據(jù)庫(kù)技術(shù)存取數(shù)據(jù)庫(kù)技術(shù) 數(shù)據(jù)庫(kù)存取組件Database Access Compon

2、ent是使用ADOActiveX Data Object技術(shù)來存取符合數(shù)據(jù)源標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)或者具有表格狀的數(shù)據(jù)形式的一種ASP內(nèi)置組件。 ADOconnectioncommandrecordsetASPASP存取數(shù)據(jù)庫(kù)存取數(shù)據(jù)庫(kù)Connection對(duì)象Command對(duì)象Recordset對(duì)象數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)網(wǎng)頁(yè)ADO輕松的實(shí)現(xiàn)實(shí)現(xiàn)數(shù)據(jù)庫(kù)數(shù)據(jù)的查詢、添加、刪除、修改等功能,方便數(shù)據(jù)庫(kù)的維護(hù)或網(wǎng)站的維護(hù)。 ASPASP存取數(shù)據(jù)庫(kù)存取數(shù)據(jù)庫(kù)1.Connection對(duì)象又稱連接對(duì)象,主要用來建立與數(shù)據(jù)庫(kù)的連接。只有先與數(shù)據(jù)庫(kù)建立連接關(guān)系,才能實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作。 2.Command對(duì)象又稱命令對(duì)象,是數(shù)據(jù)庫(kù)

3、執(zhí)行命令的對(duì)象,可以執(zhí)行數(shù)據(jù)庫(kù)查詢、修正、增添、刪除等操作。 3.Recordset對(duì)象又稱記錄集對(duì)象。當(dāng)connection對(duì)象或Command對(duì)象執(zhí)行命令后,就會(huì)得到一個(gè)由滿足條件的記錄所組成的虛擬記錄集。網(wǎng)絡(luò)導(dǎo)航實(shí)例探討網(wǎng)絡(luò)導(dǎo)航實(shí)例探討 “網(wǎng)絡(luò)導(dǎo)航” 數(shù)據(jù)庫(kù) wwwlink 中建立一個(gè)link數(shù)據(jù)表來存放導(dǎo)航信息。 Link_idnameURLintroSubmit_date1新浪 sina 門戶網(wǎng)站 2019-10-20 2北大 學(xué)習(xí)的圣地 2019-10-21 3網(wǎng)易 netease 社區(qū)網(wǎng)站 2019-10-23 4搜狐 搜索引擎 2019-10-25 如何把數(shù)據(jù)庫(kù)

4、中的導(dǎo)航信息顯示在網(wǎng)頁(yè)上,如何從網(wǎng)絡(luò)平臺(tái)上刪除、修正、添加網(wǎng)絡(luò)導(dǎo)航信息?網(wǎng)頁(yè)訪問數(shù)據(jù)庫(kù)的基本思路網(wǎng)頁(yè)訪問數(shù)據(jù)庫(kù)的基本思路q 建立數(shù)據(jù)庫(kù)連接對(duì)象(connection對(duì)象),并連接數(shù)據(jù)庫(kù)q 設(shè)置數(shù)據(jù)表操作的SQL命令,選擇connection對(duì)象或command對(duì)象來執(zhí)行q 確認(rèn)數(shù)據(jù)表操作結(jié)果是否需要顯示,如果要?jiǎng)t建立recordset對(duì)象來指向執(zhí)行結(jié)果,并讀取相應(yīng)的記錄ConnectionConnection對(duì)象的功能對(duì)象的功能q連接數(shù)據(jù)庫(kù)最主要的功能)q存取數(shù)據(jù)表中數(shù)據(jù)q事務(wù)處理ConnectionConnection對(duì)象常用屬性和方法對(duì)象常用屬性和方法屬性說明Mode設(shè)置數(shù)據(jù)庫(kù)連接的權(quán)限,

5、如只讀或只寫Connectiontimeout決定等待連接到數(shù)據(jù)庫(kù)的時(shí)間,默認(rèn)15秒ConnectionString連接數(shù)據(jù)庫(kù)所用到的信息,為一個(gè)字符串Commandtimeout等待一條命令處理的時(shí)間,默認(rèn)30秒方法說明open打開與一個(gè)數(shù)據(jù)庫(kù)的連接close關(guān)閉與一個(gè)數(shù)據(jù)庫(kù)的連接execute執(zhí)行指定的SQL語(yǔ)句、存儲(chǔ)過程等BeginTrans生成一個(gè)新的事務(wù)CommitTrans執(zhí)行事務(wù)RollBackTrans取消當(dāng)前事務(wù)所做的修改并結(jié)束該事務(wù)利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)要把數(shù)據(jù)表中的信息顯示在web頁(yè)面,首先要建立數(shù)據(jù)庫(kù)連接對(duì)象,并打開

6、相應(yīng)的數(shù)據(jù)庫(kù)wwwlink.mdb)。利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)連接對(duì)象的創(chuàng)建:利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)的連接:數(shù)據(jù)庫(kù)的連接有兩種方法:非數(shù)據(jù)源的連接和數(shù)據(jù)源的連接利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)(1非數(shù)據(jù)源的連接方法之一 利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)打開數(shù)據(jù)庫(kù)時(shí)需要兩個(gè)參數(shù),一個(gè)是:dbq=數(shù)據(jù)庫(kù)的物理路徑一個(gè)是:Driver=數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序。兩個(gè)參數(shù)之間用“;”隔開。Db.open Db

7、q= & Server.Mappath(address.mdb) & ;Driver=Microsoft Access Driver (*.mdb)利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)(1db.Open后跟的是一個(gè)字符串;(2數(shù)據(jù)庫(kù)的地址是物理地址,可以用Server.Mappath方法把相對(duì)地址轉(zhuǎn)換為物理地址,也可以直接寫,不過直接寫數(shù)據(jù)庫(kù)的物理路徑,在程序移植時(shí)需要修改物理路徑,或放在指定的位置。(3數(shù)據(jù)庫(kù)類型:由于我們用的是Access數(shù)據(jù)庫(kù),所以注明“Driver=Microsoft Access Driver (*.mdb)” ,且注意在Dri

8、ver和(*.mdb)之間的空格。(4數(shù)據(jù)庫(kù)地址信息和類型信息之間用“;”隔開利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)(2)(2)非數(shù)據(jù)源的連接方法之二基于非數(shù)據(jù)源的連接方法之二基于OLE DBOLE DB的連接方法的連接方法 )該連接方法中也有兩個(gè)參數(shù),一個(gè)是:Provider=數(shù)據(jù)提供者,另一個(gè)是:Data source=數(shù)據(jù)庫(kù)的物理路徑。兩個(gè)參數(shù)之間用“;”隔開。 利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù)(3)利用數(shù)據(jù)源的連接方法基于ODBC的連接方法 )假設(shè)我們?cè)O(shè)置wwwlink.db的數(shù)據(jù)源名字為mylink,則

9、建立連接的方法是: 利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù) 通過上述的介紹,請(qǐng)比較兩種數(shù)據(jù)庫(kù)連接方法各有什么優(yōu)勢(shì)? 非數(shù)據(jù)源連接方法:書寫比較復(fù)雜,但移植比較簡(jiǎn)單,不非數(shù)據(jù)源連接方法:書寫比較復(fù)雜,但移植比較簡(jiǎn)單,不需要在服務(wù)器上重新設(shè)置數(shù)據(jù)源。需要在服務(wù)器上重新設(shè)置數(shù)據(jù)源。 數(shù)據(jù)源連接方法:書寫簡(jiǎn)單,但移植到其他服務(wù)器,則需數(shù)據(jù)源連接方法:書寫簡(jiǎn)單,但移植到其他服務(wù)器,則需要重新設(shè)置數(shù)據(jù)源。要重新設(shè)置數(shù)據(jù)源。 利用利用ConnectionConnection對(duì)象連接數(shù)據(jù)庫(kù)對(duì)象連接數(shù)據(jù)庫(kù) 在用db.open方法連接數(shù)據(jù)庫(kù)時(shí)的數(shù)據(jù)庫(kù)連接信息還可以用conne

10、ction對(duì)象的connectionstring屬性表示。 利用利用ConnectionConnection對(duì)象關(guān)閉數(shù)據(jù)庫(kù)連接對(duì)象關(guān)閉數(shù)據(jù)庫(kù)連接connection對(duì)象.Close 切斷與指定數(shù)據(jù)庫(kù)的連接。 利用利用ConnectionConnection對(duì)象執(zhí)行數(shù)據(jù)存取對(duì)象執(zhí)行數(shù)據(jù)存取set recordSet對(duì)象=connection對(duì)象.execute (SQL語(yǔ)句字符串)或 connection對(duì)象.execute(SQL語(yǔ)句字符串)數(shù)據(jù)庫(kù)記錄查詢數(shù)據(jù)庫(kù)記錄查詢數(shù)據(jù)庫(kù)記錄的刪除、修正、增添數(shù)據(jù)庫(kù)記錄的刪除、修正、增添 連接上數(shù)據(jù)庫(kù)后,就可以應(yīng)用connection對(duì)象的execute方

11、法對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)執(zhí)行操作。 利用利用ConnectionConnection對(duì)象執(zhí)行查詢對(duì)象執(zhí)行查詢通過connection對(duì)象db的Execute方法執(zhí)行查詢SQL語(yǔ)句,得到一個(gè)虛擬的記錄集,可建立RecordSet對(duì)象作為記錄集的指針。 123rsrs.bof=truersrs.eof=truersrs.moveNext, rs.moveProvious, rs.movefirst, rs.movelast, rs.move n。 利用利用ConnectionConnection對(duì)象執(zhí)行查詢對(duì)象執(zhí)行查詢假設(shè)此時(shí)記錄集指針 rs 指向第一條記錄,123rs該記錄的每個(gè)字段值用 rs(“字段

12、名”) 獲取。 rs(“rs(“字段名字段名”)”)就是標(biāo)識(shí)對(duì)應(yīng)記錄的某個(gè)字段的值。如:就是標(biāo)識(shí)對(duì)應(yīng)記錄的某個(gè)字段的值。如:rs(“l(fā)ink_id”)rs(“l(fā)ink_id”)可以獲取指定記錄的編號(hào)可以獲取指定記錄的編號(hào)rs(“name”)rs(“name”)可以獲取指定記錄的網(wǎng)站名稱可以獲取指定記錄的網(wǎng)站名稱rs(“URL”)rs(“URL”)可以獲取指定記錄的網(wǎng)站地址可以獲取指定記錄的網(wǎng)站地址利用利用ConnectionConnection對(duì)象執(zhí)行查詢對(duì)象執(zhí)行查詢我們剛才讀取了 rs 所指向的一條記錄的數(shù)據(jù),但是一般情況記錄集中有多條記錄,如何能把每條記錄都讀取出來呢? 在讀完一條記錄后,

13、用 rs 的 moveNext 方法,使 rs 移到下一條記錄,再按照剛才所說的方法來讀取每項(xiàng)數(shù)據(jù)。直到我們的 rs 移到了記錄集的結(jié)尾,也就是rs.eoftrue時(shí)。 利用利用ConnectionConnection對(duì)象執(zhí)行刪除對(duì)象執(zhí)行刪除利用利用ConnectionConnection對(duì)象執(zhí)行刪除對(duì)象執(zhí)行刪除(1 1由于我們刪除記錄時(shí)不生成記錄集,所以沒有必要設(shè)置由于我們刪除記錄時(shí)不生成記錄集,所以沒有必要設(shè)置記錄集指針記錄集指針rsrs。 (2 2SQLSQL語(yǔ)句中用到了一個(gè)傳遞參數(shù)。語(yǔ)句中用到了一個(gè)傳遞參數(shù)。 (3 3在在SQLSQL語(yǔ)句中,如果連接的參數(shù)是數(shù)值型,則不要在參數(shù)語(yǔ)句中,

14、如果連接的參數(shù)是數(shù)值型,則不要在參數(shù)兩邊加單引號(hào),如果是字符則要加單引號(hào),如果是日期型則加兩邊加單引號(hào),如果是字符則要加單引號(hào),如果是日期型則加# #。 sqlstr1=”select sqlstr1=”select * * from link where link_id=5” from link where link_id=5”sqlstr1=”select sqlstr1=”select * * from link where name= from link where name=搜狐搜狐”sqlstr1=”select sqlstr1=”select * * from link wher

15、e link_id=” & linked from link where link_id=” & linkedsqlstr1=”select sqlstr1=”select * * from link where name=” & netName from link where name=” & netName & ” & ” 利用利用ConnectionConnection對(duì)象執(zhí)行添加對(duì)象執(zhí)行添加 增添記錄的SQL語(yǔ)句中,value內(nèi)的參數(shù)是從哪里獲取的?在增加新數(shù)據(jù)記錄時(shí),先得填寫表單,然后在增加記錄頁(yè)面獲取這些信息,作為SQL語(yǔ)句中insert里value的參數(shù)。利用利用Connecti

16、onConnection對(duì)象執(zhí)行添加對(duì)象執(zhí)行添加利用利用ConnectionConnection對(duì)象執(zhí)行數(shù)據(jù)存取對(duì)象執(zhí)行數(shù)據(jù)存取在查詢、刪除、修改等操作中,有時(shí)希望知道connection對(duì)象.execute 方法影響了多少條記錄,怎么辦?connection對(duì)象.execute SQL語(yǔ)句字符串,number 返回此次操作影響的記錄條數(shù) 數(shù)據(jù)庫(kù)的操作權(quán)限數(shù)據(jù)庫(kù)的操作權(quán)限 在上述的網(wǎng)絡(luò)導(dǎo)航例子中,我們對(duì)數(shù)據(jù)庫(kù)進(jìn)行了查詢、增添、刪除、修改的操作。但是操作數(shù)據(jù)庫(kù)就要涉及到一個(gè)權(quán)限問題,比如只讀、只寫、讀寫。Connection對(duì)象的mode屬性是設(shè)置數(shù)據(jù)庫(kù)操作權(quán)限的屬性。Mode參數(shù)整數(shù)值說明Ad

17、ModeUnknown0權(quán)限未定義AdModeRead1權(quán)限只讀AdModeWrite2權(quán)限只寫AdModeReadWrite3權(quán)限可讀可寫數(shù)據(jù)庫(kù)的操作權(quán)限數(shù)據(jù)庫(kù)的操作權(quán)限Mode屬性設(shè)置應(yīng)該在數(shù)據(jù)庫(kù)打開之前設(shè)置事務(wù)處理事務(wù)處理引入事務(wù)處理的原因引入事務(wù)處理的原因 在應(yīng)用數(shù)據(jù)庫(kù)存取組件處理數(shù)據(jù)時(shí),為了避免數(shù)據(jù)庫(kù)連接錯(cuò)誤或者數(shù)據(jù)庫(kù)執(zhí)行命令出錯(cuò)而引起的一些問題,提出了“同生共死的要求。ConnectionConnection對(duì)象的事務(wù)處理方法對(duì)象的事務(wù)處理方法connection對(duì)象的事務(wù)處理方法 connection對(duì)象.BeginTransconnection對(duì)象.CommitTranscon

18、nection對(duì)象.RollBackTrans。 源數(shù)據(jù)庫(kù)源數(shù)據(jù)庫(kù)源數(shù)據(jù)庫(kù)副本源數(shù)據(jù)庫(kù)副本Db.beginTransDb.CommitTrans生成生成ConnectionConnection對(duì)象的事務(wù)處理方法對(duì)象的事務(wù)處理方法4. connection對(duì)象的事務(wù)處理方法 connection對(duì)象.BeginTransconnection對(duì)象.CommitTransconnection對(duì)象.RollBackTrans。 源數(shù)據(jù)庫(kù)源數(shù)據(jù)庫(kù)源數(shù)據(jù)庫(kù)副本源數(shù)據(jù)庫(kù)副本Db.beginTrans生成生成Db.RollbackTransConnectionConnection對(duì)象的事務(wù)處理方法對(duì)象的事務(wù)處

19、理方法實(shí)例學(xué)習(xí)實(shí)例學(xué)習(xí)9-2.aspASPASP執(zhí)行中的出錯(cuò)對(duì)象執(zhí)行中的出錯(cuò)對(duì)象 err err對(duì)象對(duì)象 Err 對(duì)象是一個(gè)全局范圍的對(duì)象是一個(gè)全局范圍的VBScript對(duì)象,不必在您對(duì)象,不必在您的代碼中創(chuàng)建它的實(shí)例,是的代碼中創(chuàng)建它的實(shí)例,是VBScript程序在執(zhí)行中發(fā)生程序在執(zhí)行中發(fā)生錯(cuò)誤時(shí)自動(dòng)創(chuàng)建的對(duì)象。錯(cuò)誤時(shí)自動(dòng)創(chuàng)建的對(duì)象。 Err 對(duì)象的number屬性 :返回或設(shè)置數(shù)值指定錯(cuò)誤.ASPASP執(zhí)行中的出錯(cuò)對(duì)象執(zhí)行中的出錯(cuò)對(duì)象 err err對(duì)象對(duì)象On Error Resume NextErr.Raise 6 產(chǎn)生溢出錯(cuò)誤。MsgBox (Error # & CStr(Err.N

20、umber) & “: & Err.Description)Err.Clear 清除錯(cuò)誤。 由于ASP是解析執(zhí)行的,所以遇到問題時(shí)就會(huì)在發(fā)生錯(cuò)誤的地方停下來,并呈現(xiàn)錯(cuò)誤信息。On error resume next可以是asp程序忽略錯(cuò)誤繼續(xù)往下執(zhí)行程序。errorsConnectionConnection對(duì)象的對(duì)象的erreorerreor子對(duì)象子對(duì)象Error對(duì)象對(duì)象Error對(duì)象對(duì)象Error對(duì)象對(duì)象Error對(duì)象對(duì)象Connection對(duì)象對(duì)象db.errors.count 表示db的錯(cuò)誤數(shù)量db.errors.item(i) 標(biāo)識(shí)其中一個(gè)錯(cuò)誤 (0 = i db.errors.cou

21、nt 1)ConnectionConnection對(duì)象的對(duì)象的errorerror子對(duì)象子對(duì)象errors和error對(duì)象: dberror.asp ADO ADO是一種允許用戶與數(shù)據(jù)存儲(chǔ)進(jìn)行交互的組件,是一種數(shù)據(jù)庫(kù)訪問技術(shù)。它與我們的OLEDB和ODBC緊密相關(guān)。ADO調(diào)用先被送到OLEDB,然后再交由ODBC處理。ODBC根據(jù)所提供的參數(shù)如數(shù)據(jù)庫(kù)驅(qū)動(dòng)、數(shù)據(jù)庫(kù)名稱進(jìn)行數(shù)據(jù)訪問。 在index.asp中我們已經(jīng)指定了刪除的記錄,所以在SQL語(yǔ)句中必須指明條件。而這個(gè)條件該怎么確定呢?根據(jù)數(shù)據(jù)表的設(shè)計(jì),每條記錄的link_id是唯一的,所以用link_id來確定是不會(huì)出現(xiàn)誤刪除的。所以要在刪除頁(yè)

22、面和Index.asp之間建立某種聯(lián)系,也就是把Index.asp中要?jiǎng)h除的記錄的link_id值傳到刪除頁(yè)面。這種數(shù)據(jù)的傳送可以通過哪些方法實(shí)現(xiàn)呢?鏈接的網(wǎng)址中賦予了傳遞參數(shù)是rs(“l(fā)ink_id”) 傳遞參數(shù)的設(shè)計(jì)傳遞參數(shù)的設(shè)計(jì)CommandCommand對(duì)象對(duì)象數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)網(wǎng)頁(yè)ADOConnection對(duì)象Command對(duì)象Recordset對(duì)象CommandCommand對(duì)象對(duì)象 Command對(duì)象又稱命令對(duì)象,是數(shù)據(jù)庫(kù)執(zhí)行命令的對(duì)象,可以執(zhí)行數(shù)據(jù)庫(kù)查詢、修正、增添、刪除等操作。它介于Connection對(duì)象和Recordset對(duì)象之間,它通過已經(jīng)建立的Connection對(duì)象來傳遞

23、SQL指令,對(duì)數(shù)據(jù)庫(kù)提出操作請(qǐng)求,把得到的結(jié)果返回給Recordset對(duì)象。 特特 點(diǎn):點(diǎn):Command對(duì)象在實(shí)際應(yīng)用中主要是用來進(jìn)行參數(shù)查詢,Command對(duì)象的參數(shù)查詢可以提高查詢速度。 CommandCommand對(duì)象對(duì)象v Command對(duì)象的創(chuàng)建 v Command對(duì)象的屬性和方法 v 利用Command對(duì)象進(jìn)行的參數(shù)查詢 學(xué)習(xí)要點(diǎn):學(xué)習(xí)要點(diǎn):CommandCommand對(duì)象的應(yīng)用步驟對(duì)象的應(yīng)用步驟v 先創(chuàng)建Command對(duì)象v 指定Command對(duì)象的Connection對(duì)象v 設(shè)定Command對(duì)象的屬性,執(zhí)行Command對(duì)象的方法 CommandCommand對(duì)象的創(chuàng)建對(duì)象

24、的創(chuàng)建(1 1通過通過ConnectionConnection對(duì)象建立對(duì)象建立CommandCommand對(duì)象對(duì)象 CommandCommand對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建(1 1通過通過ConnectionConnection對(duì)象建立對(duì)象建立CommandCommand對(duì)象對(duì)象 第一步:創(chuàng)建Connection對(duì)象第二步:創(chuàng)建Command對(duì)象第三步:通過Command對(duì)象的ActiveConnection屬性把Command對(duì)象與Connection對(duì)象關(guān)聯(lián)起來。 CommandCommand對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建(2 2不通過不通過ConnectionConnection對(duì)象建立對(duì)象建立Comma

25、ndCommand對(duì)象對(duì)象 這種方法沒有明確的建立Connection對(duì)象,而是隱含地建立一個(gè)Connection對(duì)象。CommandCommand對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建隱含建立Connection對(duì)象的情況下,我們還能使用Connection對(duì)象的屬性和方法嗎?(2 2不通過不通過ConnectionConnection對(duì)象建立對(duì)象建立CommandCommand對(duì)象對(duì)象 CommandCommand對(duì)象的屬性和方法對(duì)象的屬性和方法 屬性說明ActiveConnection指定關(guān)聯(lián)的Connection對(duì)象CommandText指定數(shù)據(jù)庫(kù)操作命令,可以是SQL語(yǔ)句、表名、存儲(chǔ)過程Command

26、Type指定數(shù)據(jù)庫(kù)操作命令類型,是SQL語(yǔ)句、表名、存儲(chǔ)過程方法說明execute執(zhí)行數(shù)據(jù)庫(kù)操作命令CreateParameter創(chuàng)建一個(gè)parameter子對(duì)象CommandCommand對(duì)象的屬性對(duì)象的屬性 ActiveConnection ActiveConnection ActiveConnection屬性用來指定與Command對(duì)象的關(guān)聯(lián)的Connection對(duì)象。 語(yǔ)語(yǔ) 法法 :Command對(duì)象.ActiveConnectionConnection對(duì)象 CommandCommand對(duì)象的屬性對(duì)象的屬性 CommandText CommandText CommandText屬性用于

27、指定數(shù)據(jù)庫(kù)操作命令。 語(yǔ)語(yǔ) 法法 :Command對(duì)象.CommandTextSQL語(yǔ)句字符串/表名/查詢名或存儲(chǔ)過程名 CommandCommand對(duì)象的屬性對(duì)象的屬性 Commandtype Commandtype Commandtype屬性用來指定數(shù)據(jù)庫(kù)操作命令的類型,即是SQL語(yǔ)句、表名、查詢名或存儲(chǔ)過程名。語(yǔ)語(yǔ) 法法 :Command對(duì)象.CommandType類型值 類型值相應(yīng)數(shù)值說明adCmdUnknown-1CommandText類型無(wú)法確定,需程序自身去分析確定,減緩了查詢速度。是系統(tǒng)默認(rèn)值adCmdText1SQL語(yǔ)句adCmdTable2表名adCmdStoreProc

28、4查詢名或存儲(chǔ)過程名CommandCommand對(duì)象的屬性對(duì)象的屬性CommandTimeOut Command對(duì)象Execute方法的最長(zhǎng)執(zhí)行時(shí)間。 Prepared 該屬性指定數(shù)據(jù)查詢信息是否先編譯、存儲(chǔ)。 CommandCommand對(duì)象的方法對(duì)象的方法 Execute ExecuteExecute方法是根據(jù)數(shù)據(jù)查詢信息執(zhí)行數(shù)據(jù)庫(kù)操作,和Connection對(duì)象的Execute方法很相似的,幾乎能完成所有的功能。 語(yǔ)語(yǔ) 法法 :Set RecordSet對(duì)象Command對(duì)象. Execute 或者Command對(duì)象. Execute CommandCommand對(duì)象與對(duì)象與Connec

29、tionConnection對(duì)象存取數(shù)據(jù)庫(kù)的比較對(duì)象存取數(shù)據(jù)庫(kù)的比較 Connection對(duì)象存取數(shù)據(jù)庫(kù)對(duì)象存取數(shù)據(jù)庫(kù): connectionindex.aspCommand對(duì)象存取數(shù)據(jù)庫(kù)對(duì)象存取數(shù)據(jù)庫(kù): commandindex.asp Command對(duì)象的方法 CreateParameter CreateParameter方法用來創(chuàng)建一個(gè)參數(shù)對(duì)象,即Parameter對(duì)象。 Parameters集合Command對(duì)象的parameters集合和parameter對(duì)象parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象Command對(duì)象對(duì)象

30、parameterparameter對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建Parameter對(duì)象是Command對(duì)象的子對(duì)象,它的創(chuàng)建方法是:Set Parameter對(duì)象 = Command對(duì)象. CreateParameter (name,type,direction,size,value) 參數(shù)參數(shù)說明說明name參數(shù)名稱type參數(shù)類型。可省略direction參數(shù)方向,傳入或傳出??墒÷詓ize參數(shù)大小,即最長(zhǎng)字節(jié)。可省略value參數(shù)值parameterparameter對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建Type取值取值相應(yīng)數(shù)值相應(yīng)數(shù)值說明說明adDBTimeStamp 135日期時(shí)間類型adInteger3整數(shù)

31、adSingle4單精度小數(shù)adDouble5雙精度小數(shù)adVarChar200變長(zhǎng)字符串Direction取值取值相應(yīng)數(shù)值相應(yīng)數(shù)值說明說明AdParamInput1傳入AdParamOutput2傳出AdParamInputOutput3傳入傳出AdParamReturnValue4從子程序返回?cái)?shù)據(jù)到該參數(shù)中parameterparameter對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建參數(shù)對(duì)象創(chuàng)建實(shí)例:commandparameter_applyCreate_param.aspparameterparameter對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建(1要先創(chuàng)建Command對(duì)象,然后應(yīng)用Command對(duì)象的CreateParam

32、eter方法創(chuàng)建Parameter對(duì)象。 (2有些參數(shù)可以省略,有些不能省略。省略時(shí)必須用”,”隔開。如Set prm=Comm. CreateParameter(“user1”,200,”mine”) (3參數(shù)name必須為字符串,參數(shù)value的表達(dá)式要與其類型匹配。 ParametersParameters集合集合Parameters集合parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象parameter對(duì)象對(duì)象Command對(duì)象對(duì)象ParametersParameters集合的屬性集合的屬性 count countcount返回Parameters集合中Pa

33、rameter對(duì)象個(gè)數(shù)。語(yǔ)法:Command對(duì)象. Parameters.count ParametersParameters集合的方法集合的方法 append append Append方法把Parameter對(duì)象加入到Parameters集合中。語(yǔ)法:Command對(duì)象.Parameters.Append Parameter對(duì)象 ParametersParameters集合的方法集合的方法 delete delete Delete方法刪除Parameters集合中的一個(gè)Parameter對(duì)象。語(yǔ)法:Command對(duì)象.Parameters. Delete(i) i 為索引,取值范圍:(0,

34、count-1) ParametersParameters集合的方法集合的方法 item item Item方法獲取Parameters集合中指定的Parameter對(duì)象 。語(yǔ)法:Command對(duì)象.Parameters.item(i) i 為索引,取值范圍:(0,count-1) ParametersParameters集合的方法集合的方法 refresh refresh Refresh方法刷新Parameters中所有的Parameter對(duì)象。語(yǔ)法:Command對(duì)象.Parameters.refreshParametersParameters集合集合參數(shù)集合實(shí)例:commandparam

35、eter_applyparameters.asp參數(shù)查詢參數(shù)查詢 但很多情況下,我們需要查詢的信息的條件是變化的,這些條件用參數(shù)表示則為參數(shù)查詢法,參數(shù)查詢法可簡(jiǎn)化SQL語(yǔ)句并提高查詢速度。 參數(shù)查詢實(shí)例:commandparameter_applylink 參數(shù)查詢參數(shù)查詢通過上述例子分析: (1參數(shù)化的查詢?cè)谛阅苌嫌幸欢ǖ膬?yōu)化,因?yàn)閹?shù)的SQL語(yǔ)句在執(zhí)行中只需要被執(zhí)行引擎分析一次即可。Command的Parameters能夠?yàn)閰?shù)化查詢?cè)O(shè)置參數(shù)值。 (2不同的數(shù)據(jù)提供程序的Command對(duì)參數(shù)傳遞的使用不太一樣,其中SqlClient和OracleClient只支持SQL語(yǔ)句中命名參數(shù)而

36、不支持問號(hào)占位符;而OleDb和Odbc數(shù)據(jù)提供程序只支持問號(hào)占位符,不支持命名參數(shù)。 參數(shù)查詢參數(shù)查詢通過上述例子分析: (3關(guān)于參數(shù)對(duì)象direction屬性的設(shè)置。如果是“傳入則表示該參數(shù)為調(diào)用它的程序提供值,類似于函數(shù)中的參數(shù);如果為輸出則表示調(diào)用它的程序要在結(jié)束時(shí)返回一個(gè)值給該參數(shù),類似于函數(shù)名。 參數(shù)查詢參數(shù)查詢?nèi)绻鸖QL語(yǔ)句中有多個(gè)參數(shù)該怎么實(shí)現(xiàn)?如:查詢信息的條件是一個(gè)組合條件,這兩個(gè)條件的值都為參數(shù)。 多個(gè)參數(shù)的查詢就要設(shè)置多個(gè)參數(shù)對(duì)象,并且在順序上要和SQL語(yǔ)句中的參數(shù)占位符對(duì)應(yīng)一致。 RecordSetRecordSet對(duì)象對(duì)象數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)網(wǎng)頁(yè)ADOConnection對(duì)

37、象Command對(duì)象Recordset對(duì)象又稱記錄集對(duì)象。當(dāng)connection對(duì)象或Command對(duì)象執(zhí)行命令后,就會(huì)得到一個(gè)由滿足條件的記錄所組成的虛擬記錄集。RecordSetRecordSet對(duì)象對(duì)象學(xué)習(xí)內(nèi)容:學(xué)習(xí)內(nèi)容:1. Recordset對(duì)象的屬性和方法 2. Recordset對(duì)象分頁(yè)顯示的功能 RecordSetRecordSet對(duì)象的概述對(duì)象的概述 當(dāng)我們對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作時(shí),特別是查詢符合條件的數(shù)據(jù)記錄時(shí),往往要把查詢到的記錄顯示出來。這時(shí)就需要設(shè)置一個(gè)Recordset對(duì)象來標(biāo)記這個(gè)記錄集。 Recordset對(duì)象 的功能數(shù)據(jù)庫(kù)的增添、刪除、修正數(shù)據(jù)的查詢和分頁(yè)顯示 12

38、3rsRecordsetRecordset對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建 之前我們是如何創(chuàng)建一個(gè)Recordset對(duì)象的?RecordsetRecordset對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建方方 法法 一一 :RecordsetRecordset對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建方方 法法 二二 :RecordsetRecordset對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建 上述這兩種方法是利用Connection對(duì)象和Command對(duì)象的Execute方法,通過賦值形式建立Recordset對(duì)象。 建立Recordset對(duì)象標(biāo)準(zhǔn)的語(yǔ)法是: Dim rsset rsServer.CreateObject(“ADODB.Recordset”) Rec

39、ordsetRecordset對(duì)象的創(chuàng)建對(duì)象的創(chuàng)建這兩種方法的區(qū)別在于: 前者:當(dāng)recordset對(duì)象的實(shí)例賦值給該變量時(shí),系統(tǒng)此時(shí)先設(shè)置該變量為recordset對(duì)象,然后把實(shí)例賦值給該變量。 后者:直接先設(shè)置該變量為recordset對(duì)象。 RecordsetRecordset對(duì)象對(duì)象123rsRecordset對(duì)象實(shí)質(zhì)上是指向一個(gè)記錄集的指針 RecordsetRecordset對(duì)象對(duì)象fieldsfields集合集合 一個(gè)記錄集是由若干條記錄組成的,記錄又是由字段組成的,每個(gè)字段就是一個(gè)field對(duì)象,所有的field對(duì)象組成一個(gè)fields集合。 Field對(duì)象是recordset

40、對(duì)象的子對(duì)象,所以通過recordset對(duì)象的移動(dòng)和recordset對(duì)象子對(duì)象field對(duì)象的引用方法可以讀取每條記錄每個(gè)字段的值。 RecordsetRecordset對(duì)象對(duì)象fieldsfields集合集合1. recordset對(duì)象的 fields集合 Count屬性:返回記錄集中field對(duì)象字段的個(gè)數(shù)。 語(yǔ)法:recordset對(duì)象.fields.count RecordsetRecordset對(duì)象對(duì)象fieldsfields集合集合2.recordset對(duì)象的fields集合方法 Item:用于引用fields集合中某一個(gè)filed對(duì)象。 語(yǔ)法:recordset對(duì)象.field

41、s.item(字段名或字段索引值)RecordsetRecordset對(duì)象對(duì)象fieldsfields集合集合3. field對(duì)象的屬性 recordset對(duì)象的每個(gè)field對(duì)象與數(shù)據(jù)庫(kù)中的數(shù)據(jù)表的字段相同,包括下列屬性: value屬性:字段值語(yǔ)法:field對(duì)象.valuename屬性:字段名稱語(yǔ)法:field對(duì)象.nameRecordsetRecordset對(duì)象對(duì)象fieldsfields集合集合字段引用方法:rs.fields.item(1) 等效 rs.fields.item(“name”) 等效rs.fields(1) 等效rs.fields(“name”) 等效rs(1) 等效

42、rs(“name”) 分析范例:rs_field.asp字段名稱表示方法:rs(1).name字段值表示方法:rs(1).value 等效于rs(1)Recordset對(duì)象的Source屬性Source該屬性用于設(shè)置數(shù)據(jù)庫(kù)操作信息。 什么是數(shù)據(jù)庫(kù)操作信息? Command對(duì)象名、表名、SQL語(yǔ)句等 語(yǔ)法:語(yǔ)法:Recordset對(duì)象對(duì)象.Source= 數(shù)據(jù)庫(kù)操作信息數(shù)據(jù)庫(kù)操作信息 Recordset對(duì)象的Source屬性 Recordset對(duì)象的Source屬性 Recordset對(duì)象的ActiveConnection屬性前面我們學(xué)習(xí)過的哪個(gè)對(duì)象也有這個(gè)屬性?實(shí)現(xiàn)什么功能? Command對(duì)

43、象也有該屬性,用于設(shè)置數(shù)據(jù)庫(kù)連接信息。 語(yǔ)法:語(yǔ)法:Recordset對(duì)象對(duì)象.ActiveConnection數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)連接信息信息 Recordset對(duì)象的ActiveConnection屬性 Recordset對(duì)象的ActiveConnection屬性 Recordset對(duì)象的ActiveConnection屬性方法2中需要設(shè)置rs.activeconnection的值嗎?由于cmd已經(jīng)指明了ActiveConnection,而rs的source為cmd,所以已經(jīng)間接指明了,不需再設(shè)置。Recordset對(duì)象的CursorType屬性CursorType屬性用于設(shè)置記錄集指針游標(biāo)類

44、型。語(yǔ)法:語(yǔ)法:Recordset對(duì)象對(duì)象.CursorType=取值取值 CursorType參數(shù)數(shù)值說 明AdOpenForwardOnly0向前指針,只能利用MoveNext或GetRows向前移動(dòng)檢索數(shù)據(jù),默認(rèn)值A(chǔ)dOpenKeyset1鍵盤指針,在記錄集中可以向前或向后移動(dòng),當(dāng)某客戶做了修改后(除了增加數(shù)據(jù)),其他用戶都可以立即顯示AdOpenDynamic2動(dòng)態(tài)指針,在記錄集中可以向前或向后移動(dòng),所有修改都會(huì)立即在其他客戶端顯示AdOpenStatic3靜態(tài)指針,在記錄集中可以向前或向后移動(dòng),所有更新數(shù)據(jù)都不會(huì)在其他客戶端顯示Recordset對(duì)象的LockType屬性LockTy

45、pe屬性用于設(shè)置記錄集的鎖定類型。語(yǔ)法:語(yǔ)法:Recordset對(duì)象對(duì)象.LockType取值取值LockType參數(shù)數(shù)值說 明AdLockReadOnly1只讀,默認(rèn)值A(chǔ)dLockpessimistic2只能同時(shí)被一個(gè)客戶修改,修改時(shí)鎖定,修改完畢釋放AdLockOptimistic3可以同時(shí)被多個(gè)用戶修改AdLockBatchOptimistic4數(shù)據(jù)可以修改,但不鎖定其他用戶RecordsetRecordset對(duì)象的屬性小結(jié)對(duì)象的屬性小結(jié)Recordset對(duì)象的Source,activeconnection,cursortype,locktype這四個(gè)屬性的設(shè)置在Recordset對(duì)象打

46、開數(shù)據(jù)庫(kù),操作數(shù)據(jù)庫(kù)中非常重要,其值的設(shè)置直接影響到操作的運(yùn)行方式。Recordset對(duì)象的Open方法open方法 語(yǔ)法:語(yǔ)法:rs.open source, activeconnection,cursortype, locktype,options Options參數(shù)相應(yīng)數(shù)值說明adCmdUnknown-1CommandText參數(shù)類型無(wú)法確定,是系統(tǒng)默認(rèn)值adCmdText1CommandText參數(shù)類型是SQL語(yǔ)句adCmdTable2CommandText參數(shù)類型是表名adCmdStoreProc 3CommandText參數(shù)類型是查詢名或存儲(chǔ)過程名RecordsetRecordse

47、t對(duì)象的對(duì)象的OpenOpen方法方法 RecordsetRecordset對(duì)象的對(duì)象的OpenOpen方法方法 RecordsetRecordset對(duì)象的對(duì)象的OpenOpen方法方法(1source, activeconnection, cursortype, locktype, options這些參數(shù)可以先設(shè)置,open中就可以省略。但是如果前面的參數(shù)省略,后面的參數(shù)不省略時(shí),要用逗號(hào)隔開。如: rs.open select From users where name=李玫 ,1,2 (2注意cursortype, locktype的取值。 RecordsetRecordset對(duì)象與分頁(yè)

48、相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性Recordcount該屬性用于返回記錄集的記錄總數(shù)。 語(yǔ)法:語(yǔ)法:Recordset對(duì)象對(duì)象.recordcount 例子:rs_recordcount.aspRecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性 Cursortype必須設(shè)置為1或3 RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性123rs.bofrs.eof記錄集的兩個(gè)特殊位置:RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性Bof 該屬性用于判斷當(dāng)前的記錄集指針是否在記錄集的開頭,返回true或者false。

49、語(yǔ)法:Recordset對(duì)象.Bof Eof 該屬性用于判斷當(dāng)前的記錄集指針是否在記錄集的結(jié)尾,返回true或者false。 語(yǔ)法:Recordset對(duì)象.Eof RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性 對(duì)于非空記錄集,其指針可以在bof,所有記錄,eof之間移動(dòng)。但不能移到bof和eof之外。對(duì)于空記錄集,其bof和eof在同一位置,指針不能移動(dòng)。 RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性如何判斷一個(gè)記錄集是空記錄集? v if rs.eof=true and rs.bof=true then v if rs.reco

50、rdcount=0 then 舉例:rs_eofbof.asp數(shù)據(jù)分頁(yè)顯示相當(dāng)于把記錄集分成n個(gè)小記錄集,顯示時(shí)把指定的小記錄集中的信息顯示出來。 RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性N=7RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性pageSize:該屬性設(shè)置數(shù)據(jù)分頁(yè)顯示時(shí)每頁(yè)的記錄數(shù)。語(yǔ)法為:Recordset對(duì)象.pagesize=整數(shù) 。 Pagesize=3最后一頁(yè)的記錄數(shù)小于等于pagesizeRecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性pageCount:該屬性設(shè)置數(shù)據(jù)分頁(yè)顯示

51、時(shí)數(shù)據(jù)頁(yè)的總數(shù)。語(yǔ)法為:Recordset對(duì)象.pagecount pagecount=3N=7Pagesize=3RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性 當(dāng)設(shè)置了RS的pagesize屬性后,如何求得pagecount? 當(dāng)設(shè)置了RS的pagecount屬性后,如何求得pagesize?RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的屬性對(duì)象與分頁(yè)相關(guān)的屬性AbsolutePage:該屬性設(shè)置當(dāng)前指針位于哪一頁(yè)。語(yǔ)法:Recordset對(duì)象.absolutepage整數(shù) 定義了absolutepage的值后,指針立刻指向該頁(yè)的第一條記錄N=7Page

52、size=3RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的方法對(duì)象與分頁(yè)相關(guān)的方法記錄集指針的移動(dòng)方法:記錄集指針的移動(dòng)方法:Movenext:記錄指針向前移動(dòng)一條,即向下移動(dòng)一條。 語(yǔ)法:Recordset對(duì)象.movenext Movelast: 記錄指針移到最后一條記錄。 語(yǔ)法:Recordset對(duì)象.movelast Moveprevious:記錄指針向后移動(dòng)一條,即向上移動(dòng)一條。 語(yǔ)法:Recordset對(duì)象.moveprevious RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的方法對(duì)象與分頁(yè)相關(guān)的方法記錄集指針的移動(dòng)方法:記錄集指針的移動(dòng)方法:Movefirst: 記

53、錄指針移到第一條記錄。 語(yǔ)法:Recordset對(duì)象.movefirst Move:記錄指針移動(dòng)到指定的記錄。 語(yǔ)法:Recordset對(duì)象.move number,start 參數(shù)start:設(shè)置指針移動(dòng)的開始位置,如省略默認(rèn)為當(dāng)前位置;參數(shù)number:設(shè)置指針從start位置前移或后移number條記錄。當(dāng)number為正數(shù)表示向下移動(dòng)number條記錄,當(dāng)number為負(fù),表示向上移動(dòng)number條記錄。 RecordsetRecordset對(duì)象與分頁(yè)相關(guān)的方法對(duì)象與分頁(yè)相關(guān)的方法移動(dòng)指針前需要注意的問題有: (1要隨時(shí)判斷rs.eof與rs.bof是否true; (2要正確設(shè)置cursortype的值。 舉例:舉例:rs_mo

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論