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。
EX:
<%
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)為資料集的第一個欄位的值