人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

WebComputing━ADO總結報告4

WebComputing━ADO總結報告4

更新時間:2021-01-08 文章作者:未知 信息來源:網絡 閱讀次數:

四、Command對象:
  從英語字面的意思就可以看出,Command是用來做命令執行和參數傳遞的。而Command對象的批量參數傳遞,StoredProcude執行等等靈活而強大的功能也是它受到青睞的原因。Command對象主要是向SQL語句、StoredProcude傳遞參數,依靠SQL Server的強大功能來完成數據庫的操作;而RecordSet對象可以說是微軟從新封裝了數據對象,并提供了一系列的方法和屬性來簡化數據庫的編程。我們看下面的一個例子,它用了兩種不同的方法實現了向數據庫中增加一新的記錄條。從中可以清楚的看到Command對象與RecordSet對象的不同點。
方法1(Command)
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
const adParamInput = &H0001
set conn=Server.CreateObject("ADODB.Connection")
set comm=Server.Createobject("ADODB.Command")
conn.open "Driver={ Microsoft Access Driver};DBQ="& _
Server.Mappath("/source_asp")&"/property/employee.mdb;"
comm.ActiveConnection=conn
comm.CommandType=adCmdText
comm.CommandText="insert into employee (Job_ID,Fri_Name,Last_Name)"& _
&"values(?,?,?)"
set param=comm.CreateParameter("ID",adInteger,adParamInput,3,4)
comm.Parameters.Append param
set param=comm.CreateParameter("FN",adVarChar,adParamInput,255,"bill")
comm.Parameters.Append param
set param=comm.CreateParameter("LN",adVarChar,adParamInput,255,"Gates")
comm.Parameters.Append param
comm.Execute
conn.close

方法2(RecordSet)
const adCmdTable=&H0002
set conn=Server.CreateObject("ADODB.Connection")
set rs=Server.Createobject("ADODB.RecordSet")
conn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="& _
Server.Mappath("/source_asp")&"/property/employee.mdb;"
rs.ActiveConnection=conn
rs.open "employee",,,adCmdTable
rs.addnew
rs("Job_ID")=4
rs("Fri_Name")="bill"
rs("Last_Name")="Gates"
rs.update
rs.close
conn.close
  從上面的例子就可以看出來了,這兩個對象在處理一些問題上所用的不同的方法.RecordSet對象似乎更加好理解一些,因為它加入了一些在ANSI SQL中沒有的元素,它其實是用 SQL在數據庫上產生一個記錄集,然后用一個游標來指向這個記錄集,超作該游標來遍歷這個記錄集。但在性能上來講的話Command的性能也相對要優越些.其可重應用性也非常的好。而且如果你是批量的加入記錄的話,你也能體會到第一種方案的好處了,因為Command對象就是將SQL產生的記錄集作為整體來處理。下面詳細介紹Command對象的屬性、方法和集合。

   1、 CreateParameter方法:用來產生一個Parameter對象,常用的寫法為Set param=comm.CreateParameter(name,type,direction,size,value),其中name為參數的引用名,在后面引用參數的值時會有用;type為指定參數的類型,例如整數為adInteger;direction指定參數是輸入還是輸出,相應的值為adParamInput和adParamOutput;size指定參數的最大長度或最大的值;value指定參數的值。可以將各個選項分開來寫,下面的兩種寫法是等價的:
Set param= comm.CreateParameter(name,type,direction,size,value)

set param= comm.CreateParameter(name,type,direction,size)
param.value=value
  下面的方法其靈活性更大。大家請注意,在使用了CreateParameter方法后只是建立了新的 parameter對象,還需使用Parameter對象的append方法將該參數傳遞給Command對象。
  2、 Execute方法:在指定了CommandText后,并將參數傳遞出去后,用Execute方法來完成執行。
  3、 ActiveConnection屬性:用來指定與Connection對象的連接,這里的一個技巧就是不同的Command對象指向同一個Connection連接。
  4、 CommandText屬性:其值可以是一條SQL命令句,可以是一個表名,也可以是一個StoredProcedure名。
  5、 CommandType屬性:它的值由CommandText相應值的給出,分別為adCmdText,adCmdTable,adCmdStoredProc。與前面在講Connection對象的Execute方法中的相應的選項的含義相同。
  6、 CommandTimeOut屬性:設定命令執行的超時的值。
  7、 Properties集合:我們不多講了,與Connection對象的Property集合相差不多。
  8、 Parameters集合:也就是參數對象的集合了,他有主要Item方法、Append方法,和Count屬性,用法與Property對象及Error對象的相應屬性和方法類似,下面給出一個示例:
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
Const adParamInput = &H0001
set conn=Server.CreateObject("ADODB.Connection")
set comm=Server.Createobject("ADODB.Command")
conn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="& _
Server.Mappath("/source_asp")&"/property/employee.mdb;"
comm.ActiveConnection=conn
comm.CommandType=adCmdText
comm.CommandText="Insert Into employee (Job_ID,Fri_Name,Last_Name)"& _
"Values(?,?,?);"
set param=comm.CreateParameter("ID",adInteger,adParamInput,3)
param.value=14
comm.Parameters.Append param
set param=comm.CreateParameter("FN",adVarChar,adParamInput,255,"bill")
comm.Parameters.Append param
set param=comm.CreateParameter("LN",adVarChar,adParamInput,255,"Gates")
comm.Parameters.Append param
comm.Execute
conn.close
"The folowing statments show the value of parametrs
dim i
for i=0 to comm.parameters.count-1
response.write comm.parameters.item(i)&"<br>"
next
  當然,我們在引用參數時也可以不用數字,而用前面在CreateParameter時定義的名字,例如:FN、ID等等。另外我們可以將上面的程序的顯示部分改為
dim key
for each key in comm.parameters
response.write key&"<br>"
next
  下面我想重點講一講StoredProcedure,它的強大足以讓我們對它關注,當然這其中會涉及到一些SQLServer的知識

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 富民县| 仙桃市| 新邵县| 稻城县| 阜阳市| 白河县| 南投市| 永年县| 麻阳| 山东| 福州市| 鞍山市| 南澳县| 张北县| 南充市| 闻喜县| 灵宝市| 永登县| 徐汇区| 巨鹿县| 肥城市| 黄骅市| 勃利县| 肇庆市| 三都| 中阳县| 鄂托克旗| 九寨沟县| 秦安县| 沿河| 汽车| 河东区| 五大连池市| 北安市| 清原| 社会| 前郭尔| 吉水县| 高淳县| 阳朔县| 东乡县|