私はしばしばASPを開発しますが、詳細な声明についての真実は知りません。ここで簡単に紹介します。
通常の状況下で
rs.open sql、conn、1,1を使用してデータを読み取ります
データの変更:rs.open sql、conn、1,3
データの削除:直接conn.execute(new where where where id = 1 "から" delete *)など。
rs.open構文は次のとおりです。Rs.Openソース、activeConnection、cursortype、locktype
ソースはSQLステートメント、ActiveConnectionはデータベース接続、Cursortypeはカーソル、LockTypeはデータロックタイプです。
cursortype
一定の説明
adopenforwardonly(値0)(デフォルト)は、フォワードのみのタイプカーソルを開きます。
adopenkeyset(値1)がキーセットタイプカーソルを開きます。
Adopendynamic(Value 2)は、動的型カーソルを開きます。
AdopenStatic(Value 3)は、静的タイプ化されたカーソルを開きます。
ロックタイプ
一定の説明
adlockreadonly(Value 1)(デフォルト)読み取り専用 - データを変更してください。
adlockpessimistic(Value 2)保守的なロック(By-one) - プロバイダーは、通常、編集時にデータソースからレコードをロックすることにより、レコードの編集を成功させるために必要な作業を行います。
Adlockoptimistic(Value 3)Open Lock(By-one) - プロバイダーは、更新方法が呼び出された場合にのみ、オープンロックを使用してレコードをロックします。
AdLockBatchopTimistic(Value 4)オープンバッチアップデート - バッチアップデートモードを使用します(更新モードとは対照的に)。
cursortype
0フォワードカーソルのみ、レコードを閲覧する前方のみ、ページネーション、レコードセット、ブックマークをサポートしていません
1キーセットカーソル、他のユーザーがレコードに加えた変更はレコードセットに反映されますが、他のユーザーはレコードを追加または削除することはレコードセットには反映されません。ページネーション、レコードセット、ブックマークをサポートします
2つの動的カーソルは最も強力な機能を備えていますが、最も多くのリソースも消費します。レコードへのユーザーによるレコードの変更、追加、または削除は、レコードセットに反映されます。フル機能のブラウジングをサポートします。
3静的カーソルは、データのスナップショットにすぎません。レコードの記録、追加、または削除にユーザーが行った変更は、レコードセットには反映されません。前方または後方の動きをサポートします
ロックタイプ
LockTypeはレコードセットのロックタイプであり、その値は次のとおりです。
1ロックタイプ、デフォルト、読み取り専用、変更はできません
2編集時にすぐにレコードをロックします。最も安全な方法
3レコードセットは、更新方法が呼び出された場合にのみロックされ、他の以前の操作は現在のレコードなどを変更、挿入、削除することができます。
4つのレコードは編集時にロックされませんが、変更、挿入、削除されます
rs.open sql、conn、3,2
これら2つはカーソルであり、それらの特定の機能は次のとおりです。
rs.open sql、conn、a、b
A:
adopenforwardonly(= 0)
読み取り専用で、現在のデータレコードは下方にのみ移動できます
adopenkeyset(= 1)
読み取り専用、現在のデータレコードは自由に移動できます
adopendynamic(= 2)
読みやすく、書き込み可能な現在のデータレコードは自由に移動できます
採用(= 3)
読みやすく、書き込み可能な現在のデータレコードは自由に移動でき、新しいレコードを見ることができます
B:
adlockreadonly(= 1)
デフォルトのロックタイプは読み取り専用であり、レコードを変更できません。
adlockpessimistic(= 2)
悲観的なロック、レコードが変更されると、データプロバイダーはレコードをロックして、レコードの編集を成功させます。編集が始まる限り、レコードはすぐにロックされます。
adlockoptimistic(= 3)
楽観的なロックでは、更新メソッドを使用して更新レコードが送信されるまでレコードはロックされていません。