ASP動態(tài)網(wǎng)頁設(shè)計-第8章-利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的_第1頁
ASP動態(tài)網(wǎng)頁設(shè)計-第8章-利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的_第2頁
ASP動態(tài)網(wǎng)頁設(shè)計-第8章-利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的_第3頁
ASP動態(tài)網(wǎng)頁設(shè)計-第8章-利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的_第4頁
ASP動態(tài)網(wǎng)頁設(shè)計-第8章-利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第8章利用ADO實(shí)現(xiàn)數(shù)據(jù)庫的存取本章要點(diǎn)Connection對象Recordset對象Command對象Field對象Parameter對象Property對象Error對象

ASP作為動態(tài)Web應(yīng)用程序,其開發(fā)Web數(shù)據(jù)庫是其最重要的環(huán)節(jié)。ADO(ActiveX

Data

ObjectsActiveX數(shù)據(jù)對象)是微軟提供的新一代數(shù)據(jù)庫存取訪問技術(shù),ASP內(nèi)置的ADO組件是數(shù)據(jù)庫開發(fā)的重

要工具。

應(yīng)用ADO組件,通過ODBC驅(qū)動程序或OLE

DB鏈接字符串可實(shí)現(xiàn)ASP與數(shù)據(jù)庫之間的連接,通過ADO組件提供的各種方法實(shí)現(xiàn)數(shù)據(jù)檢索和數(shù)據(jù)編輯等操作。

本章將重點(diǎn)介紹ADO對象的結(jié)構(gòu)和配置,以及各種數(shù)據(jù)訪問對象。本章將詳細(xì)介紹ActiveX數(shù)據(jù)對象及其在ASP編程中的應(yīng)用。8.1

ADO簡介

ADO對象的主要優(yōu)點(diǎn)是高速、容易使用、占用內(nèi)存和磁盤空間少,所以非常適合于作為服務(wù)器端的數(shù)據(jù)庫訪問技術(shù)。

ADO對象是多線程的,在出現(xiàn)大量并發(fā)請求時,也同樣可以保持服務(wù)器的運(yùn)行效率,并且通過連接池技術(shù)以及對數(shù)據(jù)庫連接資源的完全控制,提供與遠(yuǎn)程數(shù)據(jù)庫的高效連接與訪問,同時它還支持事務(wù)處理,以開發(fā)高效率、高可靠性的數(shù)據(jù)庫應(yīng)用程序。

ADO結(jié)合了OLE

DB易于使用的特性以及

RDO(Remote

Data

Objects遠(yuǎn)程數(shù)據(jù)對象)和

DAO(Data

Access

Ojects數(shù)據(jù)訪問對象)模型中的最好特性,并將它們重新組織在一個對象模型中。

ADO包含所有可以被OLE

DB標(biāo)準(zhǔn)對象描述的數(shù)據(jù)

類型,即ADO對象模型具有擴(kuò)展性,即使對于那些從來沒有見到過的記錄集的信息格式,只要使用正常的ADO編程對象,就能夠可視化地處理所有的工作,ADO對象模型給開發(fā)人員提供了一種快捷、簡單、高效的數(shù)據(jù)庫訪問方法,可以在腳本中使用

ADO對象建立對數(shù)據(jù)庫的連接,并從數(shù)據(jù)庫中讀取記錄,形成需要的對象集合。使用ADO對象建立對數(shù)據(jù)庫的連接有兩種方法:使用面向ODBC驅(qū)動器的OLE

DB驅(qū)動程序建立連接,這種連接與任何有ODBC驅(qū)動器的數(shù)據(jù)庫兼容。使用原始的OLE

DB驅(qū)動程序建立連接。

ADO組件由ADODB對象庫構(gòu)成,ADODB對象庫包含7個對象和4個數(shù)據(jù)集合。它們分別是:Connection對象、Recordset對象、Command對象、

Field對象、Parameter對象、Property對象和Error對象,以及Fields集合、Parameter集合、

Properties集合和Error集合。

ADO把絕大部分的數(shù)據(jù)庫操作封裝在7個對象中,在ASP頁面中編程調(diào)用這些對象執(zhí)行相應(yīng)的數(shù)據(jù)庫操作。8.2

Connection對象

Connection對象用來建立數(shù)據(jù)源和ASP程序之間的連接。它代表ASP程序與數(shù)據(jù)源的唯一對話,建

立到數(shù)據(jù)源的連接后,可以在此基礎(chǔ)上用

RecordSet對象或Command對象對數(shù)據(jù)庫進(jìn)行查詢、更新、插入、刪除等操作。8.2.1

打開和關(guān)閉數(shù)據(jù)庫連接

要實(shí)現(xiàn)打開和關(guān)閉數(shù)據(jù)庫連接,首先要應(yīng)用

Connection對象創(chuàng)建數(shù)據(jù)連接,因?yàn)镃onnection對象不是ASP內(nèi)置對象,要使用Connection對象,必須首先顯式地創(chuàng)建它。<%Dim

connSet

conn

=

Server.CreateObject

("ADODB.Connection")%>

創(chuàng)建了Connection對象之后,需要打開連接才能連接到數(shù)據(jù)庫。若使用ODBC進(jìn)行數(shù)據(jù)源連接,則對應(yīng)的語法為:<%cn.Open

"DSN=建立的系統(tǒng)DSN名稱"%>Connection對象也可直接連接到Access數(shù)據(jù)庫<%Dim

connSetConn=Server.CreateObject("ADODB.Connection")Conn.open"provider=microsoft.jet.oledb.4.0;data

source

="&server.mappath("database.mdb")%>應(yīng)用完Connection對象之后,用戶最好關(guān)閉并釋放Connection對象,來緩解數(shù)據(jù)庫服務(wù)器的壓力。其語法如下:<%Conn.closeSet

conn

=

nothing%>8.2.2

Connection對象的屬性屬

性含

義Attributes包含Connection對象的事務(wù)狀況。ConnectionString包含用來和數(shù)據(jù)源建立連接的字符串。ConnectionTimeOut包含連接到數(shù)據(jù)庫的等待最長時間。如果超過此時間,則認(rèn)為連接失敗。DefaultDatabase當(dāng)前連接數(shù)據(jù)源所使用的默認(rèn)數(shù)據(jù)庫。Mode數(shù)據(jù)的更新許可權(quán),設(shè)置或返回provider的訪問權(quán)限。Provider包含Connection對象的數(shù)據(jù)提供者名稱。State包含Connection對象的當(dāng)前狀態(tài),返回一個描述連接是打開還是關(guān)閉的值。

1.Attributes屬性:可設(shè)置或返回Long值,可讀寫,該值可指示對象的一項(xiàng)或多項(xiàng)特性。并且其值可以是一個或多個XactAttributeEnum值的和。常量值描述adXactAbortRetaining262144當(dāng)調(diào)用RollbackTrans,自動啟動一個新事務(wù)。adXactCommitRetaining131072當(dāng)調(diào)用CommitTrans,自動啟動新事務(wù)。2.ConnectionTimeOut屬性:可設(shè)置或返回在終止嘗試和產(chǎn)生錯誤之前打開連接需要等待的秒數(shù)。默認(rèn)是15秒。3.ConnectionString屬性:可設(shè)置或返回用于建立到數(shù)據(jù)源的連接的信息。4.DefaultDatabase屬性:可設(shè)置或返回一個字符串值,該值是特定Connection對象上的默認(rèn)數(shù)據(jù)庫的名稱。5.Mode屬性:可設(shè)置或返回一個

ConnectModeEnum

值,此屬性為可讀寫,該值指示在Connection,Record或Stream對象中修改數(shù)據(jù)的權(quán)限。6.Provider屬性:可設(shè)置或返回包含特定

Connection對象的提供者名稱的字符串值。默認(rèn)是MSDASQL(Microsoft

OLE

DBprovider

for

ODBC)。7.State屬性:可返回一個值,為只讀。該值描述對象的當(dāng)前狀態(tài)是打開、關(guān)閉、正在連接、正在執(zhí)行還是正在檢索數(shù)據(jù)。8.2.3

Connection對象的方法方法描述Open打開一個數(shù)據(jù)庫的鏈接。Execute該方法可以執(zhí)行SQL語句,并且返回一個RecordSet對象。Close關(guān)閉一個已經(jīng)打開的鏈接。BeginTrans開始一個新事務(wù)。CommitTrans保存任何更改并結(jié)束當(dāng)前事務(wù)。RollbackTrans取消當(dāng)前事務(wù)中所作的任何更改并結(jié)束事務(wù)。

1.Open方法:用于創(chuàng)建與數(shù)據(jù)源的連接,只有調(diào)用了

Connection對象的Open方法后,Connection對象才會真正存在,然后才能發(fā)命令對數(shù)據(jù)源產(chǎn)生作用。語法為:connection.Open

connectionstring,userID,password

connectionstring:可選。一個包含有關(guān)連接的信息的字符串值。該字符串由一系列被分號隔開的parameter=value語句組成的。

userID:可選。一個字符串值,包含建立連接時要使用的用戶名稱。

Password:可選。一個字符串值,包含建立連接時要使用的密碼。

2.Execute方法:此方法可用于執(zhí)行指定的SQL語句,用于實(shí)現(xiàn)對數(shù)據(jù)庫表的修改、插入、刪除和查詢等操作。其一般格式有以下兩種:

1)執(zhí)行SQL查詢語句時,將返回查詢得到的記錄數(shù)。語法為:Set對象變量名=Connection.Execute(“SQL查詢語句”)

2)執(zhí)行操作性語句時,沒有記錄集的返回。語法為:Connection.ExecuteCommandText,RecordsAffected,Options

3.Close方法:該方法用于關(guān)閉連接對象,以釋放所占用的系統(tǒng)資源。

4.BeginTrans、CommitTrans、RollbackTrans方法ADO的一個主要功能是控制并執(zhí)行數(shù)據(jù)源的事務(wù)操作。事務(wù)機(jī)制的工作原理是,當(dāng)一個事務(wù)開始時,先將所有對數(shù)據(jù)庫的修改緩存在本地,如果全部操作都能成功,則一次性提交到數(shù)據(jù)庫執(zhí)行,否則只要其中一個步驟操作失敗,就會發(fā)生回滾事件,撤銷所有寫操作。采用這種機(jī)制,既提高了工作效率,又保證了數(shù)據(jù)一致性。例如,在進(jìn)行資金轉(zhuǎn)帳時,必須從源帳戶中減去轉(zhuǎn)帳數(shù)額,并將同樣數(shù)額的資金劃撥到目標(biāo)帳戶,無論其中哪個更新失敗,都將導(dǎo)致帳戶收支不平衡。在打開的事務(wù)中使用這些方法可確保要么全部進(jìn)行更新,要么不做任何更新。8.3

Command對象

Command對象代表一個能被數(shù)據(jù)提供器處理的命令。使

用Command對象檢索數(shù)據(jù)庫可返回Recordset對象中的記

錄,它還能執(zhí)行添加記錄、刪除記錄、更新記錄、選擇記錄以及建立數(shù)據(jù)表、刪除數(shù)據(jù)表、修改數(shù)據(jù)表等操作。由于Command對象可以帶輸入、輸出參數(shù),因而使用

Command對象不僅能夠?qū)σ话愕臄?shù)據(jù)庫信息進(jìn)行操作,

還能夠調(diào)用數(shù)據(jù)庫存儲過程。

Command對象的Execute方法可以執(zhí)行SQL語句、調(diào)用存

儲過程和創(chuàng)建Recordset對象實(shí)例。Command對象還具有

Parameter集合,使用該集合可以將數(shù)據(jù)庫存儲過程的參數(shù)與集合中各項(xiàng)元素相對應(yīng),而且存儲過程的輸出值也作為一個參數(shù)被包含在Parameter集合中,從而簡化了對存儲過程的調(diào)用。8.3.1

Command對象的屬性屬性含義Activeconnection設(shè)定Command對象的鏈接對象Commandtext設(shè)置SQL命令或存儲過程Commandtype設(shè)置Commandtext的命令類型CommandTimeout設(shè)置命令執(zhí)行的超時時間1.Activeconnection屬性:可指示Command對象當(dāng)前所屬的Connection對象。如果連接被關(guān)閉,它可設(shè)置或返回連接的定義。如果連接打開,它會設(shè)置或返回當(dāng)前的Connection對象。2.Commandtext屬性:可設(shè)置或返回一個字符串,該字符串包含一個provider命令,比如一條SQL語句、一個表名稱、一個相對URL、或者一個存儲過程調(diào)用。默認(rèn)值為零""(零長度字符串)。

3.Commandtype屬性:可設(shè)置或返回一個

CommandTypeEnum

值,該值可定義Command對象的類型。4.CommandTimeout屬性:可設(shè)置或返回執(zhí)行命令期間在終止嘗試和產(chǎn)生錯誤之前需等待的時間。設(shè)置或返回Long值,該值指示等待命令執(zhí)行的秒數(shù)。默認(rèn)值為30。8.3.2

Command對象的方法

1.CreateParameter方法:可創(chuàng)建和返回一個

Parameter對象,該對象包含指定的屬性,比如名稱、類型、方向、大小和值。

此方法不會將Parameter對象自動追加到

Command對象的Parameters集合??墒褂?/p>

Command對象的Parameters集合的Append方法將Parameter對象添加。語法:Set對象變量名=objcommand.CreateParameter(Name,Type,Direction,Size,Value)

2.Execute方法:可執(zhí)行Command對象的

CommandText屬性中指定的查詢、SQL語句或存儲過程。

如果CommandText屬性指定有記錄返回的查詢,執(zhí)行產(chǎn)生的任何結(jié)果都將存儲在新的Recordset對象中。

如果此命令沒有記錄返回的查詢,提供者將返回關(guān)閉的Recordset對象。語法:對于沒有記錄返回的Command:objcommand.Execute

RecordsAffected,parameters,options語法:對于有記錄返回的Command:Set

rs=objcommand.Execute(RecordsAffected,parameters,options)

RecordsAffected:可選。返回受查詢影響記錄的數(shù)目。對于有記錄返回的查詢,請使用

Recordset對象的RecordCount屬性來計算該對象中的記錄數(shù)量。

Parameters:可選。用SQL語句傳遞的參數(shù)值。用于更改、更新或向Parameters集合插入新的參數(shù)值。

Options:可選。指示提供者應(yīng)如何計算

Command對象的CommandText屬性??梢允且粋€或者多個CommandType值。默認(rèn)是

adCmdUnspecified。8.4

RecordSet對象除了利用Connection與Command對象的Execute方法可獲得記錄集外,利用ADO的RecordSet對象,也可獲得記錄集,且該方法所獲得的記錄集,具有更靈活的控制性和更強(qiáng)的功能。

在打開記錄集之前,可以詳細(xì)設(shè)置記錄集的游標(biāo)和鎖定類型,以決定可對一個記錄集進(jìn)行怎樣的操作。同時該對象提供了一系列的方法和屬性,通過編程可以非常方便的處理記錄集,下面介紹該對象的應(yīng)用。創(chuàng)建一個RecordSet對象實(shí)例,語法如下:Set記錄集對象實(shí)例變量=Server.CreateObject(“ADODB.RecordSet”)8.4.1

RecordSet對象的屬性

1.ActiveConnection屬性:通過設(shè)置RecordSet對象的

ActiveConnection屬性可以使Recordset對象與特定的

Connection對象相關(guān)聯(lián),ActiveConnection屬性可以是一個Connection對象名稱或是是一個包含數(shù)據(jù)源連接信息的字符串,如果連接被關(guān)閉,設(shè)置或返回連接的定義,如果連接打開,設(shè)置或返回當(dāng)前的Connection對象。

2.ActiveCommand屬性:返回與Recordset對象相關(guān)聯(lián)的Command對象。

3.Source屬性:可以是一個Command對象名稱、一條

SQL語句或是一個指定的數(shù)據(jù)表等。4.CursorLocation屬性:設(shè)置或返回游標(biāo)服務(wù)的位置。

5.CursorType屬性:設(shè)置或返回一個Recordset對象的游標(biāo)類型。在ADO中,定義了4種不同的游標(biāo)(指針)類型。符號常量值含義AdOpenForwardOnly0默認(rèn)值,僅向前游標(biāo),只允許在

Recordset中向前滾動。此外,由其他用戶所做的添加、更改和刪除將是不可見的。adOpenKeyset1鍵集游標(biāo),允許用戶看到其他用戶所做的數(shù)據(jù)更改。但不能看到其他用戶添加和刪除的記錄。adOpenDynamic2動態(tài)游標(biāo),用戶可以看到其他用戶所作的添加、更改和刪除。adOpenStatic3靜態(tài)游標(biāo),提供記錄集的靜態(tài)副本,可用來查找數(shù)據(jù)或生成報告。此外,由其他用戶所做的添加、更改和刪除將是不可見的。

6.LockType屬性:設(shè)置或返回當(dāng)編輯Recordset中的一條記錄時,可指定鎖定類型的值。符號常量值含義adLockReadOnly0默認(rèn)值。以只讀模式打開,故不能更新、插入或刪除記錄集中的記錄。adLockPessimistic1保守式記錄鎖定。在編輯修改一個記錄時,立即鎖定它,以防止其他用戶對其進(jìn)行操作。最安全的鎖定機(jī)制。adLockOptimistic2開放式記錄鎖定。在編輯修改記錄時,并未加鎖,只有在調(diào)用記錄集的Update方法更新記錄時,才鎖定記錄。adLockBatchOptimistic3開放式批更新,用于立即更新模式相反的批更新模式。

7.RecordCount屬性:返回一個Recordset對象中的記錄數(shù)目。

8.BOF屬性:如果當(dāng)前的記錄位置在第一條記錄之前,則返回true,否則返回fasle。

9.EOF屬性:如果當(dāng)前記錄的位置在最后的記錄之后,則返回true,否則返回fasle。利用該屬性,可防止指針越界而發(fā)生錯誤。通常用來作為循環(huán)訪問記錄集結(jié)束的標(biāo)志。

10.PageSize屬性:設(shè)置或返回Recordset對象的一個單一頁面上所允許的最大記錄數(shù)。

11.PageCount屬性:返回一個Recordset對象中的數(shù)據(jù)頁數(shù)。

12.AbsolutePage屬性:設(shè)置或返回一個可指定

Recordset對象中頁碼的值。

13.AbsolutePosition屬性:設(shè)置或返回一個值,此值可指定Recordset對象中當(dāng)前記錄的順序位置(序號位置)。該屬性一般是介于1和RecordCount屬性值之間的整數(shù),但

也可能取具有特殊含義的值,常量值含義AedPostUnknown-1表示當(dāng)前位置未知,或者提供器不支持AbsolutePage屬性。AdPostBOF-2表示當(dāng)前記錄指針位于第一個記錄之前。AdPostEOF-3表示當(dāng)前記錄指針位于最后一個記錄之前。8.4.2

RecordSet對象的方法

1.Open方法:RecordSet對象中最重要的方法是應(yīng)用Open方法可打開一個光標(biāo),該光標(biāo)指向查詢返回的記錄。其語法如下。記錄集對象實(shí)例變量.OpenSource,ActiveConnection,CursorType,LockType,Options

Source:該參數(shù)可以是含有一個SQL字符串、表格、視圖名稱或者存儲過程調(diào)用的字符串,也可以是Command對象。

ActiveConnection:該參數(shù)可以Connection對象的實(shí)例名或字符串。

CursorType:用來確定服務(wù)器打開Recordset時應(yīng)該使用的游標(biāo)類型。

LockType:用來確定服務(wù)器打開Recordset時應(yīng)該使用的鎖定類型。

Options:該參數(shù)用于指定Source參數(shù)項(xiàng)的命令字符串的類型,其取值與對應(yīng)的類型與Connection對象中Execute方法中Options參數(shù)相同,

2.RecordSet對象其它方法:RecordSet對象提供了如表所示的非常豐富的記錄集方法,通過這些方法可實(shí)現(xiàn)對記錄集的添加、刪除、修改等各種操作。方法描述AddNew創(chuàng)建一條新記錄。Cancel撤銷一次執(zhí)行。CancelUpdate撤銷對Recordset對象的一條記錄所做的更改。Close關(guān)閉一個Recordset。Delete刪除一條記錄或一組記錄。Find搜索一個Recordset中滿足指定某個條件的一條記錄。GetRows把多條記錄從一個Recordset對象中拷貝到一個二維數(shù)組中。GetString將Recordset作為字符串返回。Move在Recordset對象中移動記錄指針。MoveFirst把記錄指針移動到第一條記錄。MoveLast把記錄指針移動到最后一條記錄。MoveNext把記錄指針移動到下一條記錄。MovePrevious把記錄指針移動到上一條記錄。Open打開一個數(shù)據(jù)庫元素,此元素可提供對表的記錄、查詢的結(jié)果或保存的Recordset的訪問。Seek搜索Recordset的索引以快速定位與指定的值相匹配的行,并使其成為當(dāng)前行。Update保存所有對Recordset對象中的一條單一記錄所做的更改。UpdateBatch把所有Recordset中的更改存入數(shù)據(jù)庫。請?jiān)谂履J街惺褂谩?.5

Errors數(shù)據(jù)集合和Error對象

當(dāng)ADO對象的操作產(chǎn)生錯誤時,會有一個或多個Error對象被放到Connection對象的Errors集合中;據(jù)此,可獲得產(chǎn)生錯誤的原因和來源,以便采取適當(dāng)?shù)拇胧钩绦蚋油晟?。Error對象可通過建立的Connection對象的Errors數(shù)據(jù)集合取得,也可通過RecordSet對象或

Command對象的ActiveConnection屬性來取得。8.5.1

Errors數(shù)據(jù)集合

所有Error對象的集合用來響應(yīng)一個連接(Connection)上的錯誤。Errors數(shù)據(jù)集合包括兩個屬性:Count和Item。Count屬性:用來指示集合中有多少個Error對象,應(yīng)用語法為:long=Errors集合變量.count。Item屬性:用來訪問Errors集合中每一個Error對象的索引,可以根據(jù)這個值來訪問一個特定的Error對象。應(yīng)用語法為:Set

Err=Errors.item(Index)或Set

Err=Errors(Index)。Errors集合的屬性Connection對象.Errors.Count可以獲得數(shù)據(jù)庫是否發(fā)生了錯誤,如果沒有錯誤發(fā)生,則Count等于0,否則大于0。

Errors集合有2個方法:Clear和Refresh,其含義如下。

1.Clear方法:從Error集合中移去所有的Error對象。應(yīng)用語法為Errors.Clear。

2.Refresh方法:根據(jù)來自數(shù)據(jù)提供者的變化信息來更新集合中的Error對象。應(yīng)用語法為

Errors.Refresh。8.5.2

Error對象

Connection對象是用于與各類的數(shù)據(jù)庫進(jìn)行連接

的,但在此過程中將會出現(xiàn)一些不可預(yù)測的錯誤,因而出現(xiàn)了Error對象。首先要清楚一個概念,

Error對象是在連接數(shù)據(jù)庫時產(chǎn)生的,而并非那些運(yùn)行時的實(shí)時錯誤。8.6

Fields數(shù)據(jù)集合和Field對象

每個Field對象對應(yīng)于RecordSet中的一列,由多個

Field對象可以構(gòu)成Fields數(shù)據(jù)集合。使用Field對象的Value屬性可設(shè)置或取得當(dāng)前記錄的數(shù)據(jù)。8.6.1

Fields數(shù)據(jù)集合

所有Field對象的集合都關(guān)聯(lián)著一個記錄集(RecordSet)對象。Fields集合包含記錄集中每一字段值,相當(dāng)于訪問表格的某一個單元格。訪問

Fields集合的方法有多種,比如訪問以上數(shù)據(jù)表student中姓名字段的值,可應(yīng)用如下方法:rs.Fields.Item(1)rs.Fields.Item(1).valuers.Fields.Item(“姓名”)rs.Fields.Item(“姓名”).valuers.Fields(1)rs.Fields(1).valuers.Fields(“姓名”)rs.Fields(“姓名”).valuers.(1)rs.(1).valuers.(“姓名”)rs.(“姓名”).value8.6.2

Field對象的屬性屬性含義Name可返回字段名Value可查看或更改字段中的數(shù)據(jù)Type、Precision、NumericScale可返回字段的基本特性DefinedSize可返回已聲明的字段大小ActualSize可返回給定字段中數(shù)據(jù)的實(shí)際大小Attributes可決定對于給定字段哪些類型的功能受到支持8.6.3

Field對象的方法Field對象中主要的方法包括AppendChunk和GetChunk方法,用來專門處理text、image等數(shù)據(jù)類型。其中AppendChunk方法用于將數(shù)據(jù)寫到數(shù)據(jù)庫中;GetChunk方法用于將數(shù)據(jù)從數(shù)據(jù)庫中取出。語法如下:Field.AppendChunk

dataVariant

=

field.GetChunk(size)8.7 Properties數(shù)據(jù)集合和

Property對象

Property對象集合關(guān)聯(lián)著連接、命令、記錄集或字段對象中的其中一個。Property對象代表數(shù)據(jù)提供者的屬性。下面介紹Properies數(shù)據(jù)集合和

Property對象的內(nèi)容。8.7.1

Properties數(shù)據(jù)集合

Properties數(shù)據(jù)集合是包含特定對象實(shí)例的所有

Property對象,也稱為Properties數(shù)據(jù)集合對象,包括Count屬性、Refresh方法和Item方法等。

1.Count屬性:用來取得Properties集合中包含的

Property對象個數(shù)。

2.Refresh方法:用來重新取得Properties數(shù)據(jù)集合中所有的Property對象。

3.Item方法:用來取得Properties集合中的某個

Property對象。屬性含義Name8.7.2表示P對r象o屬p性e的r名ty稱對象Value表示對象的屬性值Type表示對象屬性的數(shù)據(jù)類型Attributes表示對象的特性8.8

Parameters數(shù)據(jù)集合和

Parameter對象

在前面的章節(jié)中介紹Command對象時,已介紹過

Parameter對象可為Command對象傳遞參數(shù),而

Command對象的所有Parameter對象構(gòu)成了

Parameter集合。也可以說Parameter對象集合關(guān)聯(lián)著一個命令(Command)對象。

Parameter對象代表SQL

Server存儲過程的參數(shù)或查詢中的參數(shù)。

下面介紹Parameters數(shù)據(jù)集合與Parameter對象的內(nèi)容。8.8.1

Parameters數(shù)據(jù)集合

在Command對象中,有多個Parameter子對象可以用來存

儲參數(shù),這些Parameter對象都收集在Parameters集合中。該集合中包括以下屬性與方法:

1.Count屬性:存儲了組成Parameters集合的Parameter對象的數(shù)目。

2.Append方法:用于將Parameter對象追加到

Parameters集合中。

3.Delete方法:用于刪除Parameters集合中的Parameter對象。4.Refresh方法:用于更新Parameters

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論