萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp編程 >> asp rs.open 參數1,2,3詳解

asp rs.open 參數1,2,3詳解

  讀取數據都是用rs.open sql,conn,1,1

  修改數據:rs.open sql,conn,1,3

  刪除數據:直接要conn.execute("delete * from new where id=1")這樣的。

  rs.open語法如下:rs.open source,activeconnection,cursortype,locktype

  source為sql語句,activeconnection為數據庫教程連接,cursortype是游標,locktype是數據鎖定類型.

  cursortype

  常量 說明

  adopenforwardonly(值為0) (默認值)打開僅向前類型游標。

  adopenkeyset(值為1) 打開鍵集類型游標。

  adopendynamic(值為2) 打開動態類型游標。

  adopenstatic(值為3) 打開靜態類型游標。

  locktype

  常量 說明

  adlockreadonly (值為1) (默認值)只讀 — 不能改變數據。

  adlockpessimistic(值為2) 保守式鎖定(逐個) — 提供者完成確保成功編輯記錄所需的工作,通常通過在編輯時立即鎖定數據源的記錄來完成。

  adlockoptimistic(值為3) 開放式鎖定(逐個) — 提供者使用開放式鎖定,只在調用 update 方法時才鎖定記錄。

  adlockbatchoptimistic(值為4) 開放式批更新 — 用於批更新模式(與立即更新模式相對)。

  cursortype

  0 僅向前游標,只能向前浏覽記錄,不支持分頁、recordset、bookmark

  1 鍵集游標,其他用戶對記錄說做的修改將反映到記錄集中,但其他用戶增加或刪除記錄不會反映到記錄集中。支持分頁、recordset、bookmark

  2 動態游標功能最強,但耗資源也最多。用戶對記錄說做的修改,增加或刪除記錄都將反映到記錄集中。支持全功能浏覽。

  3 靜態游標,只是數據的一個快照,用戶對記錄說做的修改,增加或刪除記錄都不會反映到記錄集中。支持向前或向後移動

  locktype

  locktype為記錄集的鎖定類型,其取值為:

  1 鎖定類型,默認的,只讀,不能作任何修改

  2 當編輯時立即鎖定記錄,最安全的方式

  3 只有在調用update方法時才鎖定記錄集,而在此前的其他操作仍可對當前記錄進行更改、插入和刪除等

  4 當編輯時記錄不會被鎖定,而更改、插入和刪

  rs.open sql,conn,3,2

  這兩個是游標,具體的作用是:

  rs.open sql,conn,a,b

  a:

  adopenforwardonly(=0)

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

  adopenkeyset(=1)

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

  adopendynamic(=2)

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

  adopenstatic(=3)

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

  b:

  adlockreadonly(=1)

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

  adlockpessimistic(=2)

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

  adlockoptimistic(=3)

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

  adlockbatchoptimistic(=4)

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

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

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

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

  總結一下:

  sql,conn,1,1 代表不允許更新,一般用於查詢操作。

  sql,conn,1,3 代表允許更新,一般用於插入,更新和刪除操作。

copyright © 萬盛學電腦網 all rights reserved