程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> rs.open和conn.execute區別

rs.open和conn.execute區別

編輯:更多數據庫知識

1. RS.OPEN SQL,CONN,A,B,C

2. CONN.EXECUTE(SQL,RowsAffected,C)

參數含義:

SQL的值可以是SQL語句、表名、存儲過程名,也可以是數據提供者所能接受的任意字符串。為了提高性能,最好為C參數指定合適的值

可選參數RowsAffected將返回INSERT、UPDATE或DELETE查詢執行以後所影響的數目。這些查詢會返回一個關閉的Recordset對象。

一個SELECT查詢將返回RowsAffected值為-1並且返回帶有一行或多行內容的打開的Recordset。

<%
set Conn=Server.CreateObject("ADODB.Connection")
Conn.open "Provider=SQLOLEDB;Password=xiaolu;User ID=sa;Database=Test;Data Source =127.0.0.1"
conn.execute "update Table1 set Col1='123'",RowsAffected,&H0001
Response.Write RowsAffected&" 行受到影響"
Conn.close
Set Conn=Nothing
%>

A: ADOPENFORWARDONLY(=0)

只讀,且當前數據記錄只能向下移動

ADOPENKEYSET(=1)

只讀,當前數據記錄可自由移動

ADOPENDYNAMIC(=2)

可讀寫,當前數據記錄可自由移動

ADOPENSTATIC(=3)

可讀寫,當前數據記錄可自由移動,可看到新增記錄

B: ADLOCKREADONLY(=1)

缺省鎖定類型,記錄集是只讀的,不能修改記錄

ADLOCKPESSIMISTIC(=2)

悲觀鎖定,當修改記錄時,數據提供者將嘗試鎖定記錄以確保成功地編輯記錄。只要編輯一開始,則立即鎖住記錄。

ADLOCKOPTIMISTIC(=3)

樂觀鎖定 ,直到用Update方法提交更新記錄時才鎖定記錄。

ADLOCKBATCHOPTIMISTIC(=4)

批量樂觀鎖定,允許修改多個記錄,只有調用UpdateBatch方法後才鎖定記錄。

當不需要改動任何記錄時,應該使用只讀的記錄集,這樣提供者不用做任何檢測。

對於一般的使用,樂觀的鎖定可能是最好的選擇,因為記錄只被鎖定一小段時間,

數據在這段時間被更新。這減少了資源的使用。

C:(指定SQL語句類型)

ADCmdUnknown (= &H0008)

未知,需要系統來判斷,速度慢,為缺省值

ADCmdText (= &H0001)

命令語句如SQL語句

如:Select * from Table1

ADCmdTable (= &H0002)

查詢的表名稱,例如:Table1

ADCmdStoredProc (= &H0004)

存儲過程名稱

ADCmdFile (= &H0100)

對象類型相應的文件名稱

ADCmdTableDirect (= &H0200)

是能直接從表中獲取行內容的表名稱

conn.execute(sql)(0)為數據集的第一個字段的值

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved