亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

ADO如何善用RecordSet組件呢?

2019-11-18 22:06:27
字體:
來源:轉載
供稿:網友
為了善用RecordSet物件,RecordSet物件還有許多有用的屬性和方法,讓我們再學學:

Filter屬性:於ReecordSet設定搜尋過濾的條件,只顯示合乎條件的資料。
Clone方法:複製一份RecordSet。
CacheSize屬性:設定或得知RecordSet暫存(cache)於記憶體的的記錄筆數。
Filter屬性

經由SELECT等指令將查詢存放到RecordSet的記錄,仍然可以於RecordSet中再設定搜尋過濾的條件,方法為使用Filter屬性。

Filter屬性,於ReecordSet設定搜尋的過濾條件,只顯示合乎條件的資料。

讓我們看一個於asp程式碼當中使用Filter屬性的例子。

譬如ASP程式碼rs19.asp如下,Filter設定為rs2.Filter = "出版='松崗'",表示只要搜尋 [出版] 欄位為 [松崗] 的記錄:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs2 = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT * From 著作"

rs2.Open SqlStr,conn1,1,1

rs2.Filter = "出版='松崗'"

%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">書名</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">出版</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">圖片</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">簡介</FONT></TD>

<% Do while not rs2.EOF %>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("書名") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("出版") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("圖片") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("簡介") %></TD>

</TR>

<% rs2.MoveNext %>

<% Loop %>

</TABLE>

<% rs2.Close %>

以上的 ASP程式碼rs19.asp,於用戶端使用瀏覽器,瀏覽執行的結果,顯示過濾後的結果,只顯示合乎條件的資料。

CacheSize屬性

CacheSize屬性,設定或得知RecordSet暫存(cache)於記憶體的的記錄筆數,預設值為1。

譬如您若將CacheSize設定為10時,ADO首先將前10筆的記錄暫存(cache)放到本機記憶體緩衝器(local memory buffer)當中,一旦您移動到最末的第10筆記錄時,ADO暫存(cache)第二個10筆記錄。

若要更新暫存(cache)的記錄,可使用Resync方法。

讓我們看一個於ASP程式碼當中使用CacheSize的例子。

譬如ASP程式碼rs18.asp如下,這個例子將產品資料表的資料由第一筆逐一移動到最末筆,總計循環做了100次,計算總共花了多少時間,比較有和沒有設定CacheSize的執行效能差別:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs2 = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT * From 產品"

rs2.Open SqlStr,conn1,1,1

t1 = Timer

For i = 1 to 100

rs2.MoveFirst

Do while not rs2.EOF

A = rs2(0)

rs2.MoveNext

Loop

Next

t2 = Timer

Response.Write "<BR>無設CacheSize: " & CINT(t2 - t1)

rs2.MoveFirst

rs2.CacheSize = 10

t2 = Timer

For i = 1 to 100

rs2.MoveFirst

Do while not rs2.EOF

A = rs2(0)

rs2.MoveNext

Loop

Next

t2 = Timer

Response.Write "<BR>有設CacheSize: " & CINT(t2 - t1)

%>

<% rs2.Close %>

由本例,未設定CacheSize,花了6秒時間就完成。將CacheSize設定為10時,反而花了9秒時間才完成??梢奀acheSize須小心使用,否則將影響執行的效能。

Clone方法

Clone方法,複製一份RecordSet。

有時候想處理一下RecordSet,譬如使用如上的Filter屬性,於ReecordSet設定搜尋的過濾條件,RecordSet就被變更,此時若又想保留原RecordSet時,就可以使用Clone方法,先複製一份RecordSet,再處理複製的那一份。

讓我們看一個於ASP程式碼當中使用Clone的例子。

譬如ASP程式碼rs12.asp如下,使用Set rs1 = rs.Clone將rs 的RecordSet複製一份到rs1的RecordSet當中:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT * FROM 著作"

rs.Open SqlStr,conn1,1,1

Set rs1 = rs.Clone

%>

<Center>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">書名</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">出版</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">圖片</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">簡介</FONT></TD>

</TR>

<%

Do While Not rs1.EOF

%>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs1("書名")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs1("出版")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs1("圖片")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs1("簡介")%></TD>

</TR>

<% rs1.MoveNext

Loop

rs1.Close %>

</TABLE>

以上的 ASP程式碼rs12.asp,於用戶端使用瀏覽器,瀏覽執行的結果,顯示經過複製的那一份rs1的RecordSet。

DSN data source

當我們想得知DSN data source的詳細資訊時,可以直接將連線顯示出來。

讓我們看一個於ASP程式碼當中得知DSN data source詳細資訊的例子。

譬如ASP程式碼rs11.asp如下:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Response.Write(conn1)

%>

以上的 ASP程式碼rs11.asp,於用戶端使用瀏覽器,瀏覽執行的結果,使用Response.Write(conn1),即可顯示DSN data source的詳細資訊。

OpenSchema

OpenSchema方法,可得知SQL Server某一個資料庫的資料表資訊。

讓我們看一個於ASP程式碼當中使用OpenSchema的例子,請先安裝本書所附「網站熱門應用精選」光碟片,以便自動於SQL Server建立comPak資料庫。

譬如ASP程式碼rs30.asp如下:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "driver={SQL Server};server=(Local);uid=sa;pwd=;database=comPak"

set rs = conn1.OpenSchema(20) 'adSchemaTables

Do while not rs.EOF

Response.Write "<BR>" & rs("TABLE_NAME") & ": " & rs("TABLE_TYPE")

rs.MoveNext

Loop

%>

以上的 ASP程式碼rs30.asp,於用戶端使用瀏覽器,瀏覽執行的結果,由set rs = conn1.OpenSchema(20) 取得SQL Server 的comPak資料庫的資料表資訊,其中rs("TABLE_NAME")取得資料表名稱,rs("TABLE_TYPE")取得資料表類型。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
www.xxxx精品| 亚洲精品www久久久| 久久久女人电视剧免费播放下载| www.欧美精品| 国产精品美女久久久久av超清| 欧美专区福利在线| 午夜精品视频网站| 欧美理论在线观看| 亚洲一区二区在线播放| 55夜色66夜色国产精品视频| 萌白酱国产一区二区| 国产在线拍偷自揄拍精品| 久久影视电视剧凤归四时歌| 97久久伊人激情网| 国产精品精品一区二区三区午夜版| 欧美国产第一页| 欧美俄罗斯乱妇| 亚洲va欧美va在线观看| 欧美日韩国产区| 国产成人精品免高潮在线观看| 成人av在线天堂| 国产日本欧美一区二区三区在线| 午夜精品久久久99热福利| 亚洲男人的天堂在线| 国产精品jizz在线观看麻豆| 美女少妇精品视频| 国产在线视频一区| 亚洲综合在线小说| 国产一区二区三区四区福利| 精品色蜜蜜精品视频在线观看| 精品久久中文字幕久久av| 欧美电影免费观看高清| 亚洲va欧美va国产综合久久| 日韩精品在线免费观看| 久久综合国产精品台湾中文娱乐网| 国产精品成人免费视频| 久久婷婷国产麻豆91天堂| 美女av一区二区三区| 久久免费成人精品视频| 茄子视频成人在线| 欧美日韩成人精品| 国产91色在线|| 国产精品69精品一区二区三区| 国产在线999| 国模gogo一区二区大胆私拍| 亚洲国产日韩精品在线| 97超级碰在线看视频免费在线看| 国产精品福利小视频| 91亚洲精品久久久| 亚洲最大av在线| 影音先锋欧美在线资源| 欧美多人爱爱视频网站| 亚洲精品一区二区网址| 亚洲日韩中文字幕在线播放| 久久久久久高潮国产精品视| 久久影视三级福利片| 欧美疯狂性受xxxxx另类| 中文字幕自拍vr一区二区三区| 久久天天躁狠狠躁夜夜躁| 尤物九九久久国产精品的特点| 欧美午夜精品伦理| 中文字幕一区电影| 韩国三级日本三级少妇99| 成人高h视频在线| 久久福利视频网| 日韩视频在线免费观看| 日韩va亚洲va欧洲va国产| 成人网址在线观看| 久久久亚洲影院| 欧美裸体xxxxx| 91视频九色网站| 日韩在线观看av| 九九综合九九综合| 91精品久久久久久久| 97国产精品人人爽人人做| 午夜精品在线视频| 欧美高跟鞋交xxxxhd| 色悠悠国产精品| 日韩最新中文字幕电影免费看| 欧美激情精品久久久久久| 久久久综合av| 久久中文字幕一区| 欧美大片免费看| 在线播放精品一区二区三区| 精品人伦一区二区三区蜜桃免费| 亚洲裸体xxxx| 欧美精品免费在线| 国产精品久久久久久五月尺| 日韩av中文字幕在线| 亚洲欧美在线一区二区| 在线观看精品国产视频| 亚洲三级黄色在线观看| 最新国产精品拍自在线播放| 久久亚洲欧美日韩精品专区| 亚洲bt欧美bt日本bt| 欧美日韩在线观看视频小说| 日韩有码在线播放| 91精品国产91久久久久久吃药| 久久久在线观看| 亚洲资源在线看| 日韩一区av在线| 日本道色综合久久影院| 午夜精品久久久99热福利| 成人午夜在线影院| 5252色成人免费视频| 国产视频精品一区二区三区| 亚洲人成亚洲人成在线观看| xxav国产精品美女主播| 亚洲精品自产拍| 欧美极品第一页| 在线观看亚洲区| 97色在线播放视频| 5566成人精品视频免费| 成人黄色中文字幕| 日韩一区二区三区国产| 久久久伊人欧美| 欧美福利小视频| 欧美大片免费观看在线观看网站推荐| 中文字幕欧美专区| 亚洲精品午夜精品| 色琪琪综合男人的天堂aⅴ视频| 亚洲国产一区二区三区四区| www国产精品视频| 在线观看欧美www| 久热在线中文字幕色999舞| 自拍偷拍亚洲一区| 国产精品免费视频久久久| 日韩国产激情在线| 国产精品91在线| 日韩亚洲欧美中文在线| 在线观看国产成人av片| 亚洲国产精品久久久久秋霞蜜臀| 日韩视频免费大全中文字幕| 午夜精品福利视频| 久久久伊人欧美| 国产亚洲在线播放| 亚洲第一精品自拍| 久久久亚洲欧洲日产国码aⅴ| 亚洲欧美在线x视频| 色噜噜久久综合伊人一本| 国产视频丨精品|在线观看| 不卡av电影在线观看| 欧美国产在线视频| 6080yy精品一区二区三区| 欧美日韩国产二区| 国产精品揄拍一区二区| 一区二区国产精品视频| 欧美另类老女人| 国产精品91久久久久久| 国产精品精品久久久久久| 色悠悠久久久久| 91丝袜美腿美女视频网站| 国产日韩专区在线| 国产精品视频内| 奇米一区二区三区四区久久| 亚洲第一福利网| 欧美激情精品久久久久久变态| 国产精品国产福利国产秒拍| 韩国三级日本三级少妇99| 久久久久久久久久久久久久久久久久av| 亚洲成在人线av| 亚洲精品国产精品国自产观看浪潮| 亚洲a一级视频| 国产精品久久久久久av下载红粉|