版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第第7 7章章 數(shù)據(jù)庫訪問數(shù)據(jù)庫訪問7.1 7.1 網(wǎng)絡數(shù)據(jù)庫概述網(wǎng)絡數(shù)據(jù)庫概述7.2 ODBC7.2 ODBC數(shù)據(jù)源數(shù)據(jù)源 7.3 ADO7.3 ADO對象對象 7.4 7.4 數(shù)據(jù)庫訪問數(shù)據(jù)庫訪問7.5 7.5 綜合舉例綜合舉例 7.1 7.1 網(wǎng)絡數(shù)據(jù)庫概述網(wǎng)絡數(shù)據(jù)庫概述 ODBC ODBC是銜接數(shù)據(jù)庫的通用驅動程序,是由是銜接數(shù)據(jù)庫的通用驅動程序,是由微軟主導的數(shù)據(jù)庫銜接規(guī)范,適用環(huán)境也以微微軟主導的數(shù)據(jù)庫銜接規(guī)范,適用環(huán)境也以微軟的系統(tǒng)最為成熟。在軟的系統(tǒng)最為成熟。在UNIXUNIX系統(tǒng)中,通常要運系統(tǒng)中,通常要運用其他廠商所提供的用其他廠商所提供的ODBCODBC驅動程序,有些驅動
2、程序,有些UNIXUNIX廠商會本人提供廠商會本人提供ODBCODBC驅動程序如驅動程序如SUNSUN為為SolarisSolaris提供提供ODBCODBC。 ADO ADO是在是在MicrosoftMicrosoft的新的數(shù)據(jù)庫運用開發(fā)的新的數(shù)據(jù)庫運用開發(fā)接口接口APIAPIOLE DBOLE DB技術上實現(xiàn)的,經(jīng)過技術上實現(xiàn)的,經(jīng)過ASPASP的的ADOADO對象,只需安裝了相應的對象,只需安裝了相應的OLE DBOLE DB驅動程驅動程序,就可以訪問各種數(shù)據(jù)源,包括傳統(tǒng)的關系序,就可以訪問各種數(shù)據(jù)源,包括傳統(tǒng)的關系型數(shù)據(jù)庫和其他數(shù)據(jù)。型數(shù)據(jù)庫和其他數(shù)據(jù)。前往首頁前往首頁7.2 ODBC
3、7.2 ODBC數(shù)據(jù)源數(shù)據(jù)源7.2.1 ODBC7.2.1 ODBC概述概述7.2.2 7.2.2 創(chuàng)建數(shù)據(jù)源創(chuàng)建數(shù)據(jù)源前往首頁前往首頁7.2.1 ODBC7.2.1 ODBC概述概述 每個每個ODBCODBC數(shù)據(jù)源都被指定一個名字,即數(shù)據(jù)源都被指定一個名字,即DSNDSNData Source NameData Source Name。ODBCODBC數(shù)據(jù)源分為機器數(shù)據(jù)源分為機器數(shù)據(jù)源和文件數(shù)據(jù)源兩種。數(shù)據(jù)源和文件數(shù)據(jù)源兩種。 機器數(shù)據(jù)源把信息存儲在登錄信息中,因機器數(shù)據(jù)源把信息存儲在登錄信息中,因此只能被該計算機訪問。機器數(shù)據(jù)源包括系統(tǒng)此只能被該計算機訪問。機器數(shù)據(jù)源包括系統(tǒng)數(shù)據(jù)源和用戶數(shù)
4、據(jù)源。系統(tǒng)數(shù)據(jù)源對本地計算數(shù)據(jù)源和用戶數(shù)據(jù)源。系統(tǒng)數(shù)據(jù)源對本地計算機的一切用戶都是可見的,而用戶數(shù)據(jù)源是針機的一切用戶都是可見的,而用戶數(shù)據(jù)源是針對某個用戶的,它只對當前用戶可見。對某個用戶的,它只對當前用戶可見。 文件數(shù)據(jù)源把信息存儲在后綴名為文件數(shù)據(jù)源把信息存儲在后綴名為.dsn.dsn的的文件中,假設該文件存放在網(wǎng)絡共享的驅動器文件中,假設該文件存放在網(wǎng)絡共享的驅動器中,就可以被一切安裝了一樣驅動程序的用戶中,就可以被一切安裝了一樣驅動程序的用戶共享。共享。前往本節(jié)前往本節(jié)7.2.2 7.2.2 創(chuàng)建數(shù)據(jù)源創(chuàng)建數(shù)據(jù)源ODBCODBC數(shù)據(jù)源管理器數(shù)據(jù)源管理器“創(chuàng)建數(shù)據(jù)源窗創(chuàng)建數(shù)據(jù)源窗口口“
5、創(chuàng)建到創(chuàng)建到SQL ServerSQL Server的新數(shù)據(jù)源窗口的新數(shù)據(jù)源窗口“SQL ServerSQL Server身份驗證窗身份驗證窗口口指定默許數(shù)據(jù)庫等選項指定默許數(shù)據(jù)庫等選項指定日志文件等選項指定日志文件等選項“ODBC Microsoft SQL ServerODBC Microsoft SQL Server安裝窗口安裝窗口“SQL Server ODBCSQL Server ODBC數(shù)據(jù)源測試窗口數(shù)據(jù)源測試窗口前往本節(jié)前往本節(jié) 前往本節(jié)前往本節(jié)7.3 ADO7.3 ADO對象對象 ADO ADO對象對象ActiveX Data ObjectsActiveX Data Objec
6、ts是是ASPASP內(nèi)置對象之一,凡是能由內(nèi)置對象之一,凡是能由ODBCODBC驅動驅動程序訪問的數(shù)據(jù)庫,在程序訪問的數(shù)據(jù)庫,在ASPASP中都可以經(jīng)過中都可以經(jīng)過ADOADO對象與對象與SQLSQL語句對其進展網(wǎng)絡訪問。語句對其進展網(wǎng)絡訪問。 ADOADO的七個對象的七個對象1 1ConnectionConnection對象用于創(chuàng)建對象用于創(chuàng)建ASPASP腳本和指定腳本和指定數(shù)據(jù)庫的銜接。數(shù)據(jù)庫的銜接。 2 2CommandCommand對象擔任對數(shù)據(jù)庫提供懇求,也對象擔任對數(shù)據(jù)庫提供懇求,也就是傳送指定的就是傳送指定的SQLSQL命令。命令。 3 3ParameterParameter對象
7、擔任傳送對象擔任傳送CommandCommand對象所對象所需求的需求的SQLSQL命令參數(shù)。命令參數(shù)。 4 4RecordSetRecordSet對象擔任閱讀與操作從數(shù)據(jù)庫對象擔任閱讀與操作從數(shù)據(jù)庫中獲得的數(shù)據(jù),也就是說中獲得的數(shù)據(jù),也就是說RecordSetRecordSet對象可以對象可以用來表示來自根本表或命令執(zhí)行結果的記錄選用來表示來自根本表或命令執(zhí)行結果的記錄選集。集。5 5FieldField對象表示指定對象表示指定RecordSetRecordSet對象的數(shù)對象的數(shù)據(jù)字段。據(jù)字段。 ADOADO的七個對象的七個對象6 6PropertyProperty對象表示對象表示ADOAD
8、O的各項對象屬性值,的各項對象屬性值,每個每個ADOADO對象都會有一個描畫或控制對象行的對象都會有一個描畫或控制對象行的屬性。屬性。7 7ErrorError對象擔任記錄銜接過程中一切發(fā)生對象擔任記錄銜接過程中一切發(fā)生的錯誤信息,任何涉及的錯誤信息,任何涉及ADOADO對象的操作都會生對象的操作都會生成一個或多個提供者錯誤。成一個或多個提供者錯誤。 ADOADO的四個數(shù)據(jù)集合的四個數(shù)據(jù)集合1 1FieldsFields數(shù)據(jù)集合數(shù)據(jù)集合 一切一切FieldField對象的集合。對象的集合。 2 2PropertiesProperties數(shù)據(jù)集合數(shù)據(jù)集合 一切一切PropertyProperty
9、對象的集合。對象的集合。 3 3ParametersParameters數(shù)據(jù)集合數(shù)據(jù)集合 包含包含CommandCommand對象的一切對象的一切 Parameter Parameter對象。對象。4 4ErrorsErrors數(shù)據(jù)集合數(shù)據(jù)集合 一切一切ErrorError對象的集合。對象的集合。ADOADO對象與數(shù)據(jù)集合之間的關系對象與數(shù)據(jù)集合之間的關系前往首頁前往首頁7.4 7.4 數(shù)據(jù)庫訪問數(shù)據(jù)庫訪問實現(xiàn)網(wǎng)絡數(shù)據(jù)庫的訪問主要包括以下實現(xiàn)網(wǎng)絡數(shù)據(jù)庫的訪問主要包括以下5 5個步驟:個步驟: 1 1翻開數(shù)據(jù)庫翻開數(shù)據(jù)庫 2 2創(chuàng)建記錄集創(chuàng)建記錄集 3 3操作記錄集操作記錄集 4 4封鎖和釋放封
10、鎖和釋放ADOADO對象對象前往首頁前往首頁翻開數(shù)據(jù)庫翻開數(shù)據(jù)庫 運用運用ADOADO訪問數(shù)據(jù)庫之前,先要建立數(shù)據(jù)源,訪問數(shù)據(jù)庫之前,先要建立數(shù)據(jù)源,再運用銜接對象翻開數(shù)據(jù)庫。再運用銜接對象翻開數(shù)據(jù)庫。ADOADO的的ConnectionConnection對象對象是網(wǎng)絡經(jīng)過是網(wǎng)絡經(jīng)過ADOADO訪問數(shù)據(jù)庫的關鍵,它擔任與數(shù)據(jù)庫訪問數(shù)據(jù)庫的關鍵,它擔任與數(shù)據(jù)庫的實踐銜接動作,其它對象都是依賴于的實踐銜接動作,其它對象都是依賴于ConnectionConnection對象對數(shù)據(jù)庫進展操作的。對象對數(shù)據(jù)庫進展操作的。 ConnectionConnection對象的創(chuàng)建對象的創(chuàng)建語法語法 Set S
11、et 銜接對象名銜接對象名 =Server.CreateObject(ADODB.Connection) =Server.CreateObject(ADODB.Connection)例如例如 Set Conn Set Conn=Server.CreateObject(ADODB.Connection)=Server.CreateObject(ADODB.Connection)ConnectionConnection對象的方法對象的方法方法名方法名功能功能OpenOpen打開打開ConnectionConnection對象,建立與數(shù)據(jù)源的連接。對象,建立與數(shù)據(jù)源的連接。ExecuteExecut
12、e執(zhí)行指定的執(zhí)行指定的SQLSQL語句、存儲過程。語句、存儲過程。CloseClose關閉關閉ConnectionConnection對象。對象。OpenOpen方法方法ConnectionConnection對象的對象的OpenOpen方法擔任創(chuàng)建與數(shù)據(jù)源的銜接。方法擔任創(chuàng)建與數(shù)據(jù)源的銜接。語法語法 銜接對象名銜接對象名.Open DSN=.Open DSN=數(shù)據(jù)源名數(shù)據(jù)源名;UID=;UID=用戶名用戶名;PWD=;PWD=密碼密碼;例如:例如: Set Conn=Server.CreateObject(ADODB.Connection) Set Conn=Server.CreateObj
13、ect(ADODB.Connection) Conn.Open DSN=kycg;UID=sa;PWD=; Conn.Open DSN=kycg;UID=sa;PWD=;ConnectionConnection對象的屬性對象的屬性屬性名屬性名說明說明CommandTimeoutCommandTimeout設置設置ConnectionConnection對象的對象的ExecuteExecute方法運行時等方法運行時等待的最長時間。待的最長時間。ConnectionTimeoutConnectionTimeout 設置設置ConnectionConnection對象的對象的OpenOpen方法與數(shù)
14、據(jù)庫連接方法與數(shù)據(jù)庫連接時的最長等待時間。時的最長等待時間。DefaultDatabaseDefaultDatabase設置設置ConnectionConnection對象的缺省數(shù)據(jù)庫名。對象的缺省數(shù)據(jù)庫名。StateState獲得獲得ConnectionConnection對象的狀態(tài),即打開或關閉。對象的狀態(tài),即打開或關閉。前往本節(jié)前往本節(jié)創(chuàng)建記錄集創(chuàng)建記錄集 對于數(shù)據(jù)庫中數(shù)據(jù)的訪問是經(jīng)過記錄集對對于數(shù)據(jù)庫中數(shù)據(jù)的訪問是經(jīng)過記錄集對象實現(xiàn)的,因此在訪問數(shù)據(jù)庫之前需求創(chuàng)建記象實現(xiàn)的,因此在訪問數(shù)據(jù)庫之前需求創(chuàng)建記錄集對象。錄集對象。用SQL語句創(chuàng)建記錄集對象 用Recordset對象創(chuàng)建記錄集
15、對象 用Command對象創(chuàng)建記錄集對象 用用SQLSQL語句創(chuàng)建記錄集對象語句創(chuàng)建記錄集對象即直接經(jīng)過即直接經(jīng)過ConnectionConnection對象的對象的ExecuteExecute方法創(chuàng)建記錄集對象。方法創(chuàng)建記錄集對象。 語法語法 銜接對象名銜接對象名.Execute(CommandText,RecordAffected,Options).Execute(CommandText,RecordAffected,Options)例如:例如:Conn.Execute(Update teacher set Conn.Execute(Update teacher set 職稱職稱=副教授副
16、教授 Where Where 系別系別=數(shù)學系數(shù)學系)Set Rs=Conn.Execute(Select Set Rs=Conn.Execute(Select * * From teacher Where From teacher Where 職稱職稱=教授教授) CommandText CommandText:可以是:可以是SQLSQL語句、一個存儲過程或根本表名;語句、一個存儲過程或根本表名;RecordAffectedRecordAffected:是一個整型變量,用于存儲數(shù)據(jù)庫效力器每次操:是一個整型變量,用于存儲數(shù)據(jù)庫效力器每次操 作所得的記錄數(shù);作所得的記錄數(shù); Options O
17、ptions:表示對數(shù)據(jù)庫懇求的類型。:表示對數(shù)據(jù)庫懇求的類型。 AdCmdTextAdCmdTextAdCmdTableAdCmdTableAdCmdStoredProcAdCmdStoredProc用用RecordsetRecordset對象創(chuàng)建記錄集對象對象創(chuàng)建記錄集對象1 1創(chuàng)建一個創(chuàng)建一個RecordsetRecordset對象,格式如下:對象,格式如下:Set RecordsetSet Recordset對象名對象名 =Server.CreateObject(ADODB.Recordset) =Server.CreateObject(ADODB.Recordset)2 2運用運用R
18、ecordsetRecordset對象的對象的OpenOpen方法翻開方法翻開RecordsetRecordset對象。對象。 例如例如Set ObjRs=Server.CreateObject(ADODB.Recordset)Set ObjRs=Server.CreateObject(ADODB.Recordset) 格式格式 Recordset Recordset對象名對象名.Open .Open 數(shù)據(jù)源數(shù)據(jù)源, ,銜接稱號銜接稱號 , ,游標類型游標類型,鎖定方式鎖定方式,數(shù)據(jù)源類型數(shù)據(jù)源類型 常量參數(shù)值闡明AdOpenForwardOnly0運用前向類型游標,只能在記錄集中向前挪動默許
19、值AdOpenKeySet1運用鍵集類型游標,可以在記錄集中向前或向后挪動。假設其他用戶刪除或改動了某條記錄,記錄集中將反映這個變化。但是,假設其他用戶添加了一條新記錄,新記錄將不會出如今記錄集中AdOpenDynamic2運用動態(tài)類型游標,可以在記錄集中向前或向后挪動。對于其他用戶呵斥的任何記錄的變化都將在記錄集中有所反映AdOpenStatic3運用靜態(tài)類型游標,可以在記錄集中向前或向后挪動。不會對其他用戶呵斥的任何記錄的變化有所反映RecordSetRecordSet對象的對象的CursorTypeCursorType參數(shù)參數(shù)常量參數(shù)值闡明AdLockReadOnly0只讀。不能改動數(shù)據(jù)
20、默許值。AdLockPessimistic1保守式鎖定逐個。指定在編輯一個記錄時立刻鎖定它。AdLockOptimistic2開放式鎖定逐個。只在調用Update方法時才鎖定記錄AdLockBatchOptimistic3開放式批更新。用于批更新方式。RecordSetRecordSet對象的對象的LockTypeLockType參數(shù)參數(shù)常量參數(shù)值闡明AdCmdUnknown-1指示Source參數(shù)中的命令類型為未知AdCmdText1指示被執(zhí)行的字符串包含一個命令文本AdCmdTable2指示被執(zhí)行的字符串包含一個表的名字AdCmdStoredProc3指示被執(zhí)行的字符串包含一個存儲過程名R
21、ecordSetRecordSet對象的對象的OptionsOptions參數(shù)參數(shù)注以上常量的闡明包含在文件注以上常量的闡明包含在文件“adovbs.incadovbs.inc中,用戶需中,用戶需求將該文件復制到網(wǎng)頁文件所在的目錄中。該文件的途徑是求將該文件復制到網(wǎng)頁文件所在的目錄中。該文件的途徑是“C:Program FilesCommon FilesSystemADOC:Program FilesCommon FilesSystemADO,并且在用,并且在用到該常量的到該常量的ASPASP腳本的最前面需求加上如下語句:腳本的最前面需求加上如下語句:用用CommandCommand對象創(chuàng)建記
22、錄集對象對象創(chuàng)建記錄集對象創(chuàng)建創(chuàng)建CommandCommand對象的語法格式如下:對象的語法格式如下:Set CommandSet Command對象名對象名=Server.CreateObject(ADODBmand)=Server.CreateObject(ADODBmand)例如:例如:Set ObjCm=Server.CreateObject(ADODBmand)Set ObjCm=Server.CreateObject(ADODBmand)CommandCommand對象的屬性對象的屬性 屬性屬性說明說明ActiveConnectionActiveConnection設置與設置與Co
23、mmandCommand對象連結的對象連結的ConnectionConnection對象。對象。CommandTextCommandText指明對數(shù)據(jù)庫的具體操作,可以是指明對數(shù)據(jù)庫的具體操作,可以是SQLSQL語句或存語句或存儲過程。儲過程。CommandTypeCommandType設置設置CommandCommand對象的類型。對象的類型。CommandTimeoutCommandTimeout設置設置CommandCommand對象的對象的ExecuteExecute方法運行時的最長方法運行時的最長等待時間。等待時間。StateState取得取得CommandCommand對象的狀態(tài),
24、即打開或關閉。對象的狀態(tài),即打開或關閉。用用CommandCommand對象創(chuàng)建記錄集對象對象創(chuàng)建記錄集對象運用運用ActiveConnectionActiveConnection屬性與屬性與ConnectionConnection對象建立銜接。對象建立銜接。語法語法 Command Command對象名對象名.ActiveConnection=Connection.ActiveConnection=Connection對象名對象名例如例如 ObjCm.ActiveConnection=Conn ObjCm.ActiveConnection=Conn Command Command對象的對象的
25、ExecuteExecute方法用于執(zhí)行方法用于執(zhí)行CommandTextCommandText屬性中設定的屬性中設定的SQLSQL語句或存語句或存儲過程,并且前往記錄集對象。儲過程,并且前往記錄集對象。語法語法 Set Set 記錄集對象名記錄集對象名=Command.Execute(CommandText,RecordsAffected,Parameters,Options)=Command.Execute(CommandText,RecordsAffected,Parameters,Options)例如例如 Set ObjRs=ObjCm.Execute(Select Set ObjRs
26、=ObjCm.Execute(Select * * From teacher Where From teacher Where 職稱職稱=教授教授)前往本節(jié)前往本節(jié)操作記錄集操作記錄集 創(chuàng)建了記錄集對象,就可以對記錄集進展創(chuàng)建了記錄集對象,就可以對記錄集進展操作。對記錄集的操作主要經(jīng)過操作。對記錄集的操作主要經(jīng)過RecordsetRecordset對對象、象、FieldField對象和對象和FieldsFields集合實現(xiàn)。集合實現(xiàn)。 Recordset對象的屬性和方法對象的屬性和方法 Field對象和對象和Fields集合的屬性和方法集合的屬性和方法前往本節(jié)前往本節(jié)RecordSetReco
27、rdSet對象的方法對象的方法1 1、OpenOpen方法方法 運用運用OpenOpen方法可以翻開代表數(shù)據(jù)表、查詢結果或者以前方法可以翻開代表數(shù)據(jù)表、查詢結果或者以前保管的保管的RecordSetRecordSet中記錄的游標即與數(shù)據(jù)庫建立銜接。中記錄的游標即與數(shù)據(jù)庫建立銜接。語法語法RecordSet.Open Source, ActiveConnection, CursorType, RecordSet.Open Source, ActiveConnection, CursorType, LockType, Options LockType, Options2 2、CloseClose方
28、法方法 用來封鎖所指定的用來封鎖所指定的RecordSetRecordSet對象。對象。 語法語法 RecordSet.Close RecordSet.Close 這些方法都是用來挪動記錄指針的,經(jīng)過運用這些方法可以根據(jù)實踐情這些方法都是用來挪動記錄指針的,經(jīng)過運用這些方法可以根據(jù)實踐情況方便地將記錄指針挪動到所要的位置。況方便地將記錄指針挪動到所要的位置。 MoveFirst MoveFirst:將指針挪動到:將指針挪動到RecordSetRecordSet對象的第一條記錄。對象的第一條記錄。 MoveLast MoveLast:將指針挪動到最后一條數(shù)據(jù)記錄。:將指針挪動到最后一條數(shù)據(jù)記錄。
29、 MoveNext MoveNext:將指針挪動到下一條數(shù)據(jù)記錄。:將指針挪動到下一條數(shù)據(jù)記錄。MovePreviousMovePrevious:將指針挪動到上一條數(shù)據(jù)記錄。:將指針挪動到上一條數(shù)據(jù)記錄。 Move Move:將指針挪動到指定位置。:將指針挪動到指定位置。 3 3、MoveFirstMoveFirst,MoveLastMoveLast,MoveNextMoveNext,MovePreviousMovePrevious,MoveMove方法方法RecordSetRecordSet對象的方法對象的方法Num:Num:指針挪動的數(shù)目,如為正數(shù)表示向后挪動,負數(shù)表示向前挪動。指針挪動的
30、數(shù)目,如為正數(shù)表示向后挪動,負數(shù)表示向前挪動。Start:Start:指針挪動的基準點。指針挪動的基準點。AdBookmarkCurrentAdBookmarkCurrent或或0 0表示從當前記錄開場;表示從當前記錄開場; AdBookmarkFirst AdBookmarkFirst或或1 1表示從首記錄開場;表示從首記錄開場; AdBookmarkLast AdBookmarkLast或或2 2表示從尾記錄開場。表示從尾記錄開場。4 4UpdateUpdate,CancelUpdateCancelUpdate,CancelBatchCancelBatch、UpdateBatchUpdat
31、eBatch方法方法 用來更新或取消更新的。用來更新或取消更新的。 Update Update:用于將:用于將RecordSetRecordSet對象中當前記錄的修正保管到對象中當前記錄的修正保管到 數(shù)據(jù)庫中。數(shù)據(jù)庫中。CancelUpdateCancelUpdate:取消在調用:取消在調用UpdateUpdate方法前所做的修正。方法前所做的修正。 UpdateBatch UpdateBatch:進展批次方式的更新數(shù)據(jù)操作。:進展批次方式的更新數(shù)據(jù)操作。 CancelBatch CancelBatch:允許取消批次方式的更新數(shù)據(jù)操作。:允許取消批次方式的更新數(shù)據(jù)操作。RecordSetRec
32、ordSet對象的方法對象的方法AddNewAddNew:用來向數(shù)據(jù)庫中插入一條新記錄;:用來向數(shù)據(jù)庫中插入一條新記錄;DeleteDelete:用于從數(shù)據(jù)庫中刪除指定的記錄。:用于從數(shù)據(jù)庫中刪除指定的記錄。語法語法 RecordSet RecordSet對象名對象名.AddNew.AddNew RecordSet RecordSet對象名對象名.Delete.Delete5 5、AddNewAddNew,DeleteDelete方法方法RecordSetRecordSet對象的屬性對象的屬性1 1ActiveConnectionActiveConnection、SourceSource、Cu
33、rsorTypeCursorType、LockTypeLockType屬性屬性2 2CursorLocationCursorLocation,BookmarkBookmark屬性屬性3 3RecordCountRecordCount,MaxRecordsMaxRecords屬性屬性4 4BOFBOF,EOFEOF屬性屬性5 5PageSizePageSize,PageCountPageCount,AbsolutePageAbsolutePage,AbsolutePositionAbsolutePositionRecordsetRecordset對象名對象名.Open .Open 數(shù)據(jù)源數(shù)據(jù)源,
34、 ,銜接稱號銜接稱號 , ,游標類型游標類型,鎖定方式鎖定方式,數(shù)據(jù)源類型數(shù)據(jù)源類型 前往前往常量參數(shù)值闡明AdEditNone0指示當前沒有編輯操作AdEditInProgress1指示當前記錄中的數(shù)據(jù)已被修正但未保管AdEditAdd2指示AddNew方法已被調用,且復制緩沖區(qū)中的當前記錄是尚未保管到數(shù)據(jù)庫中的新記錄AdEditDelete3指示當前記錄已被刪除EditModeEditMode屬性的取值屬性的取值前往前往常數(shù)參數(shù)值闡明AdFilterNone0刪除當前挑選條件并恢復查看的一切記錄AdFilterPendingRecords1允許只查看已更改且尚未發(fā)送到效力器的記錄。只能運用
35、于批更新方式AdFilterAffectedRecords2允許只查看上一次Delete,Resync,UpdateBatch或CancelBatch調用所影響的記錄AdFilterFetchedRecords3允許查看當前緩沖區(qū)中的記錄,即上一次從數(shù)據(jù)庫中檢索記錄的調用結果AdFilterConflictingRecords4允許查看在上一次批更新中失敗的記錄FilterFilter屬性的取值屬性的取值 Fields Fields集合就是集合就是RecordsetRecordset對象中包含的一切對象中包含的一切FieldField對象對象的集合,可以經(jīng)過的集合,可以經(jīng)過FieldsFiel
36、ds集合的集合的ItemItem方法獲得方法獲得FieldsFields集合集合中的中的FieldField對象,語法如下:對象,語法如下: Recordset Recordset對象對象.Fields.Item(i).Fields.Item(i)也可以簡寫為:也可以簡寫為: Recordset Recordset對象對象.Fields(i).Fields(i) i i表示當前記錄的第表示當前記錄的第i i個字段,個字段,i=0,1,i=0,1,字段個數(shù)字段個數(shù)-1-1。 還可以運用還可以運用RecordsetRecordset對象對象(字段名字段名)的方式訪問當前的方式訪問當前記錄的某個字段
37、。記錄的某個字段。FieldField對象的訪問對象的訪問 運用運用FieldsFields集合的集合的CountCount屬性獲得一個屬性獲得一個RecordsetRecordset對象中對象中每條記錄的字段個數(shù)。每條記錄的字段個數(shù)。FieldField對象的屬性對象的屬性NameName屬性表示對象屬性的稱號。屬性表示對象屬性的稱號。ValueValue屬性表示對象屬性的屬性值。屬性表示對象屬性的屬性值。TypeType屬性表示對象屬性的數(shù)據(jù)類型。屬性表示對象屬性的數(shù)據(jù)類型。前往前往FieldField對象的方法對象的方法 Field Field對象的方法包括對象的方法包括AppendCh
38、unkAppendChunk,GetChunkGetChunk等。等。AppendChunkAppendChunk方法和方法和GetChunkGetChunk方法方法是用來專門處置是用來專門處置texttext,imageimage等數(shù)據(jù)類型的。等數(shù)據(jù)類型的。AppendChunkAppendChunk方法用于將數(shù)據(jù)寫到數(shù)據(jù)庫中;方法用于將數(shù)據(jù)寫到數(shù)據(jù)庫中;GetChunkGetChunk方法用于將數(shù)據(jù)從數(shù)據(jù)庫中取出。方法用于將數(shù)據(jù)從數(shù)據(jù)庫中取出。語法語法 Field.AppendChunk data Field.AppendChunk data Variant = field.GetChun
39、k(size) Variant = field.GetChunk(size)封鎖數(shù)據(jù)庫封鎖數(shù)據(jù)庫 在一切數(shù)據(jù)庫操作終了后,需求將記錄集在一切數(shù)據(jù)庫操作終了后,需求將記錄集和數(shù)據(jù)庫的銜接封鎖。可以經(jīng)過和數(shù)據(jù)庫的銜接封鎖??梢越?jīng)過Connection Connection 對對象的象的CloseClose方法將已建立并翻開的方法將已建立并翻開的ConnectionConnection對對象封鎖。象封鎖。語法語法 銜接對象名銜接對象名.Close.Close例如例如 Conn.Close Conn.Close 注注 封鎖以后的封鎖以后的ConnectionConnection對象的定義依然存在,對象
40、的定義依然存在,只是其中包含的數(shù)據(jù)被刪除。因此,依然可以經(jīng)只是其中包含的數(shù)據(jù)被刪除。因此,依然可以經(jīng)過過OpenOpen方法將該方法將該ConnectionConnection對象重新翻開。對象重新翻開。釋放釋放ADOADO對象對象 封鎖了數(shù)據(jù)庫的銜接,只是清空了它們的封鎖了數(shù)據(jù)庫的銜接,只是清空了它們的數(shù)據(jù),而定義還在。假設不再運用銜接對象,數(shù)據(jù),而定義還在。假設不再運用銜接對象,那么可以釋放銜接對象,進而釋放所占用的內(nèi)那么可以釋放銜接對象,進而釋放所占用的內(nèi)存資源。存資源。語法語法 Set Set銜接對象名銜接對象名=Nothing=Nothing例如例如 Set Conn=Nothing
41、 Set Conn=Nothing前往本節(jié)前往本節(jié)綜合舉例綜合舉例例題例題13.19例題例題13.20例題例題13.21例題例題13.22前往首頁前往首頁例例13_19 13_19 顯示記錄顯示記錄運用運用CommandCommand對象的對象的ExecuteExecute方法創(chuàng)建記錄集對象方法創(chuàng)建記錄集對象rsrs%注運用這種方法創(chuàng)建的記錄集對象的游標類型是注運用這種方法創(chuàng)建的記錄集對象的游標類型是adOpenForwardOnlyadOpenForwardOnly,只,只能對該記錄集對象進展顯示,不能進展修正、添加、刪除的操作,也不能運能對該記錄集對象進展顯示,不能進展修正、添加、刪除的操
42、作,也不能運用用RecordCountRecordCount屬性。屬性。 例例13_19 13_19 顯示記錄顯示記錄在表格的第一行顯示字段名在表格的第一行顯示字段名For i=0 to rs.Fields.count-1Response.Write & rs.Fields(i).name & Next 顯示詳細的記錄內(nèi)容顯示詳細的記錄內(nèi)容Do while not rs.EOF Response.Write For j=0 to rs.Fields.count-1 Response.Write & rs.Fields(j).value & Next Respon
43、se.Write rs.MovenextLoop 前往前往例例13_20 13_20 添加記錄添加記錄經(jīng)過經(jīng)過RecordsetRecordset對象創(chuàng)建記錄集對象對象創(chuàng)建記錄集對象rs rs set conn = set conn = Server.CreateObject(ADODB.Connection)Server.CreateObject(ADODB.Connection)conn.Open DSN=kycg; UID=sa; PWD=;conn.Open DSN=kycg; UID=sa; PWD=;Set rs= Server.CreateObject(ADODB.Records
44、et)Set rs= Server.CreateObject(ADODB.Recordset)rs.Open rs.Open teacher,conn,adOpenKeyset,adLockOptimistic,adCteacher,conn,adOpenKeyset,adLockOptimistic,adCmdTablemdTable例例13_20 13_20 添加記錄添加記錄運用記錄集對象的方法添加新記錄運用記錄集對象的方法添加新記錄rs.AddNewrs(教師編號教師編號).Value =Trim(Request.QueryString(num)rs(姓名姓名).Value=Trim(Request.QueryString(name)rs(職稱職稱).Value=Trim(Request.QueryString(zc)rs(系別系別).Value=Trim(Request.QueryString(depart)rs(最高學位最高學位).Value=Trim(Request.QueryString(xw)rs(性別性別).
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中語文統(tǒng)編版(部編版)必修 上冊第六單元12《拿來主義》課堂實錄
- 快手電商2025版網(wǎng)紅直播帶貨合作合同范本3篇
- 2025版民爆物品裝卸作業(yè)安全評估與認證合同4篇
- 鄭州美術學院《互動光媒與空間》2023-2024學年第一學期期末試卷
- 正德職業(yè)技術學院《中國古代文學(2)》2023-2024學年第一學期期末試卷
- 2025年度倉庫倉儲設施維修與保養(yǎng)合同3篇
- 2025版專業(yè)體驗館消防安裝人工費用結算合同3篇
- 2024影視制作合同制作內(nèi)容補充協(xié)議
- 2025年度商鋪租賃合同租賃期滿資產(chǎn)返還與驗收標準4篇
- 2025版雙向轉診醫(yī)療服務績效考核合同3篇
- 《電影之創(chuàng)戰(zhàn)紀》課件
- 社區(qū)醫(yī)療抗菌藥物分級管理方案
- 開題報告-鑄牢中華民族共同體意識的學校教育研究
- 《醫(yī)院標識牌規(guī)劃設計方案》
- 夜市運營投標方案(技術方案)
- (高清版)DZT 0282-2015 水文地質調查規(guī)范(1:50000)
- 《紅樓夢》禮儀研究
- 會議分組討論主持詞
- 動火作業(yè)審批表
- 新能源汽車火災事故處置程序及方法
- 教學查房及體格檢查評分標準
評論
0/150
提交評論