「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
コネクションとセッション、そして、トランザクションとの関連。
詳細 †
コネクション †
- 以下で意識する。
- コネクションのオーバーヘッド
- 消費リソース / コネクション
- コネクション・プーリング
セッション †
- 通常は、1コネクション・1セッション。
- MARSを使用すると、1コネクション・nセッションになる。
MARS (Multiple Active Result Sets) †
- 呼称
- MARS : Multiple Active Result Set
- 複数のアクティブな結果セット
- 本機能を使用すると、
- 1コネクション:1セッションのところが、
- 1コネクション:nセッションになる。
- サンプルコードを見ると、
- 1コネクション中に複数のDataReader?で使用するクエリの結果セットを保持できるもよう。
- 若しくは、カーソル操作(読み取りと更新)を非同期に処理することができる。
- 機能を有効にするには、キーワード ペア "MultipleActiveResultSet?=True" を接続文字列に追加。
sp_getbindtoken / sp_bindsession †
- バインドされた接続(bind connections)などと呼ばれるが、超マイナーな機能
- MARSの前身の機能で、本機能の登場により、
複数の結果セットを保持する目的では使用しなくなった。
- トランザクションもまとめる事が出来る
(セッションをバインドすると、同じトランザクションに参加できる)。
参考 †
Microsoft Docs †
sp_getbindtoken / sp_bindsession †
MARS (Multiple Active Result Sets) †
Tags: :データアクセス, :SQL Server