1。Rs.OpenSQL、Conn、A、B、c
2。conn.execute(sql、nowsaffected、c)
1。conn.execute(sql、nowsaffected、c)
パラメーターの意味:
SQLの値は、SQLステートメント、テーブル名、ストアドプロシージャ名、またはデータプロバイダーが受け入れることができる文字列です。パフォーマンスを改善するには、Cパラメーターに適切な値を指定することが最善です
オプションのパラメーターラウィングを受けています
1.挿入、更新、または削除クエリが実行された後、wosowsectedが影響を受ける数を返し、これらのクエリは閉じたレコードセットオブジェクトを返します。
2。選択クエリは、-1のラウィューフィート値と、1つ以上の内容の列を持つオープンレコードセットを返します。
<%set conn = opendatabase '(opendatabase関数の詳細については、ASPのアクセスおよびMSSQLデータベースとの接続を確立する方法を参照)conn.execute update table1 set col1 =' 123 '、h0001response.write rowsphected&rowsaftected conn。 closeset conn = Nothing%>
2。Rs.OpenSQL、Conn、A、B、c
rs = server.createobject(adodb.recordset)sql = xxxxrs.open sql、conn、1,1、&h0001irs = rs.getrows(10)
&H0001とはどういう意味ですか?私がこれを初めて見たとき、私はしばらくの間本当に混乱していました。現在、これに関するウェブサイトの情報は世界中に飛んでいます。ここで言及しましょう。次のパラメーターの説明には具体的な指示があります。
パラメーター:カーソルタイプ
const adopenforwardonly = 0読み取り専用、デフォルト。カーソルは、レコードセット内のレコード間でのみ前進することができます。ページネーション、レコードセット、ブックマークはサポートされていません
const adopenkeyset = 1読み取り専用、キーセットカーソル、現在のデータレコードは自由に移動でき、他のユーザーが記録に加えた変更はレコードセットに反映されますが、他のユーザーはレコードを追加または削除することは反映されませんレコードセットで。ページネーション、レコードセット、ブックマークをサポートします
const adopendynamic = 2は読み書きできます。現在のデータレコードは自由に移動でき、動的カーソル関数は最も強力ですが、ほとんどのリソースも消費します。レコードへのユーザーによるレコードの変更、追加、または削除は、レコードセットに反映されます。フル機能のブラウジングをサポートします(アクセスはサポートされません)。
const adopenstatic = 3静的カーソルは、レコードの追加、または削除にユーザーが行ったデータの単なるスナップショットです。前方または後方の動きをサポートします
Bパラメーター:ロックタイプ
const adlockreadonly = 1デフォルト値、レコードセットは読み取り専用であり、変更できません。
const adlockpessimistic = 2 '心理的ロック、編集時にすぐにレコードをロックして、レコードの編集を成功させます。最も安全な方法
const dlockoptimistic = 3 '楽観的なロック、更新メソッドを使用して更新レコードが送信されるまでロックされていません。
const dlockbatchoptimistic = 4 'バッチ楽観的ロックにより、複数のレコードを変更でき、RecordsはupdateBatchメソッドを呼び出した後にのみロックされます。
レコードの変更が不要な場合は、プロバイダーが検出を行う必要がないように、読み取り専用のレコードセットを使用する必要があります。一般的な使用のために、レコードは短期間しかロックされておらず、この期間中にデータが更新されるため、楽観的なロックが最良の選択肢である場合があります。これにより、リソースの使用が削減されます。
cパラメーター:( SQLステートメントタイプを指定)
const adcmdunknown =&h0008 '不明、システムは判断する必要があり、速度は遅い、デフォルト値
const adcmdtext =&h0001 'sqlのセグメントが実行されます
const adcmdtable =&h0002 'はテーブルを操作します
const adcmdstoredproc =&h0004 'ストアドプロシージャ名が操作されます
const adcmdfile =&h0100 'オブジェクトタイプの対応するファイル名
const adcmdtabledirect =&h0200 'は、テーブルから行のコンテンツを直接取得できるテーブル名です
3。Rs.openとconn.executeの違い
rs.open sql、conn
SQLが削除、更新、挿入の場合、使用中にrs.closeを使用してファイルの最後にrs.closeを書き込み、複数のレコードセットを追加しないでください。そして最後に、1つのピースでセットされたレコードを閉じます:rs.close rs1.close
conn.execute(sql)
SQLが削除、更新、挿入の場合、使用中にrs.closeを使用してファイルの最後にrs.closeを書き込み、複数のレコードセットを追加しないでください。そして最後に、セットセットを一緒に閉じます:rs.close rs1.close。
SQLが更新された場合、挿入、削除、次にconn.execute(sql)を使用するか、ブラケットを使用しないかconn.execute sql
SQLがSELECTステートメントの場合、set rs = conn.execute(sql)ブラケットを使用する必要があります。省略しないでください。
これは、VBの性質のためです。
1。conn.execute
sql = select * from admin where username = 'xiaozhu'set rs = conn.execute(sql)'実行後にレコードセットを自動的に閉じます '最後に、接続を閉じるだけで十分です。
2。Rs.Open
rs = server.createobject(adodb.recordset)sql = select * select * from admin where username = 'xiaozhu'rs.open sql、conn、1,1'自分でいくつかのパラメーターを設定できます。レコードセットを閉じてrs.closeSet rs = nothingconn.closeSet conn = Nothingを接続するには
3。Command.Execute
sql = select * from admin where username = 'xiaozhu'
rs = command.execute(sql)を設定します
1。
rs = conn.executeを設定する(選択されたステートメントの場合)取得したrs.recordcount = -1
rs.open sql、conn(sqlはselectステートメント)
2。
rs.Openはデータベースconn.executeを開くことです。
rs = conn.execute(挿入、更新、削除)を設定します。閉じたレコードセットを返します
rs = conn.execute(select)閉じていないレコードセットを返す
3。
conn.execute(sql、rowsaffected、c)
パラメーターの意味:
SQLの値は、SQLステートメント、テーブル名、ストアドプロシージャ名、またはデータプロバイダーが受け入れることができる文字列です。パフォーマンスを改善するには、Cパラメーターに適切な値を指定することをお勧めします。
オプションのパラメーターラウィットは、挿入、更新、または削除クエリの実行後に影響の数を返します。これらのクエリは、閉じたレコードセットオブジェクトを返します。
SELECTクエリは、-1のラウィューフィート値と、1つ以上のコンテンツを備えたオープンレコードセットを返します。
4。
conn.execute SQLは、次のコードなど、レコードセットオブジェクトが返されない場合に使用するのに適しています。
sql = id =&cstr(id)からのニュースから削除
conn.execute sql
RecordSetオブジェクトを返す必要がある場合は、次のコードを使用してください。
sql = id =&cstr(id)からニュースから選択
rs = conn.execute(sql)を設定します
execute(sql)のブラケットを削除すると、rs = conn.execute sqlを設定します)が、ステートメントが終了していないことを促し、2つの形式があることがわかりました。詳細に次のように:
フォーマット1:接続オブジェクトname.execute(sql命令)
フォーマット2:接続オブジェクトname.execute(データテーブル名)
conn.execute(sql)(0)は、データセットの最初のフィールドの値です
conn.execute(SQL)レコードセットを返します。
conn.execute SQLはレコードセットを返しません。一般に、返品値なしで挿入、更新、削除、その他の操作に使用されます。