欧美日韩精品在线,国内精品久久久久久久久,一级毛片恃级毛片直播,清纯唯美亚洲综合欧美色

說說對(duì)象的復(fù)制_ASP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:ASP實(shí)例:利用緩存提高數(shù)據(jù)顯示效率
實(shí)例演示:先建立一個(gè)簡單的數(shù)據(jù)庫,寫個(gè)function讀取一下,寫入一個(gè)dim變量temp中: ASP代碼 以下為引用的內(nèi)容: <% Function DisplayRec

以下為引用的內(nèi)容:
<%
Dim oConn,oRs
Set oConn = Server.CreateObject("ADODB.Connection")
Set ors = Server.CreateObject("ADODB.RecordSet")
oConn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("db1.mdb")
Session("conn") = oConn
ors.open "select * from t1",Session("conn"),1,1
Response.write(oRs(0))
ors.close
Set ors = Nothing
oConn.close
Set oConn = Nothing
%>

這是網(wǎng)上流傳的把Connection對(duì)象保存在Seesion對(duì)象中的代碼,注意其中的:Session("conn") = oConn,對(duì)象的復(fù)制就是這樣子的嗎?下邊我們來驗(yàn)證一下:

以下為引用的內(nèi)容:
<%
Dim oConn,oRs
Set oConn = Server.CreateObject("ADODB.Connection")
Set ors = Server.CreateObject("ADODB.RecordSet")
oConn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("db1.mdb")
Session("conn") = oConn
ors.open "select * from t1",Session("conn"),1,1
Response.write(Session("conn").ConnectionString)
ors.close
Set ors = Nothing
oConn.close
Set oConn = Nothing
%>

結(jié)果出錯(cuò),提示"缺少對(duì)象: 'Session(...)'"!這說明對(duì)象并沒有復(fù)制成功,那Session("conn")是什么類型的呢?我們用TypeName(Session("conn"))來測試下,結(jié)果為"String"!出于好奇,我們直接輸出Session("conn")看看:

以下為引用的內(nèi)容:
<%
Dim oConn,oRs
Set oConn = Server.CreateObject("ADODB.Connection")
Set ors = Server.CreateObject("ADODB.RecordSet")
oConn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("db1.mdb")
Session("conn") = oConn
ors.open "select * from t1",Session("conn"),1,1
Response.write(Session("conn"))
ors.close
Set ors = Nothing
oConn.close
Set oConn = Nothing
%>

結(jié)果為:

以下為引用的內(nèi)容:
Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source=E:\www\db1.mdb;Mode=Share Deny None;
Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";
Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global
Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;
Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;
Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False

這不是Connection對(duì)象的ConnectionString屬性值嗎?Connection對(duì)象默認(rèn)的屬性為ConnectionString,執(zhí)行Session("conn") = oConn時(shí)只是將Connection對(duì)象默認(rèn)屬性的值賦給Session("conn")。那為什么用在oRs.open "select * from t1",Session("conn"),1,1也能成功呢?查找資料得出RecordSet對(duì)象open方法的第二個(gè)參數(shù)可以為Connection對(duì)象,也可以是數(shù)據(jù)庫連接信息的字符串!Ok了,那在上邊例子中的oConn對(duì)象完全是多余的,直接用下邊代碼即可:

以下為引用的內(nèi)容:
<%
Dim ors
Set ors = Server.CreateObject("ADODB.RecordSet")
Session("conn") = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("db1.mdb")
ors.open "select * from t1",Session("conn"),1,1
Response.write(oRs(0))
ors.close
Set ors = Nothing
%>

結(jié)果無錯(cuò)。好了,到現(xiàn)在為止還剩下一個(gè)問題沒有解決:怎么才是正確的對(duì)象復(fù)制方法?還是用Set語句:

以下為引用的內(nèi)容:
<%
Dim oConn,oRs
Set oConn = Server.CreateObject("ADODB.Connection")
Set ors = Server.CreateObject("ADODB.RecordSet")
oConn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("db1.mdb")
Set Session("conn") = oConn
ors.open "select * from t1",Session("conn"),1,1
Response.write(Session("conn").ConnectionString)
Response.write("<br/>")
Response.write(TypeName(Session("conn")))
ors.close
Set ors = Nothing
oConn.close
Set oConn = Nothing
%>

這次能顯示出ConnectionString屬性的信息了,結(jié)果也顯示Session("conn")為Connection對(duì)象!

原文:http://www.mzwu.com/article.asp?id=1105

分享:Windows 2003 安裝設(shè)置iis
安裝篇 2003默認(rèn)安裝不帶IIS的,要安裝,請(qǐng)點(diǎn)擊開始->管理工具->配置您的服務(wù)器向?qū)? 然后一步步的下一步。到了列表選擇項(xiàng)目的時(shí)候。 從列表中選擇 應(yīng)用服務(wù)器(IIS,ASP.NET)

來源:模板無憂//所屬分類:ASP教程/更新時(shí)間:2008-08-22
相關(guān)ASP教程