1

Windows アプリケーションを作成し、System.Data.SqlClient.SqlConnection オブジェクトを使用しています

 SqlConnection targetDatabaseConnection = new SqlConnection(ConnectionString);

以下は接続文字列です

Data Source=.;Initial Catalog=TestBCP_12;User ID=sa;Password=sa;Min Pool Size=100; Max Pool Size=100; Decr Pool Size=100; Incr Pool Size=100;

次の 2 つの設定でエラーが発生する

 Decr Pool Size=100; Incr Pool Size=100;

すべてのサイズが 100 であることはわかっていますが、そうであれば例外の原因ですか? 、メッセージはエラーに忠実ではありません。

次の記事を読み、それに基づいて実装しました http://www.codeproject.com/Articles/17768/ADO-NET-Connection-Pooling-at-a-Glance

これは SQL では直接不可能であるという答えが見つかったので、SQL への接続を確立しながら機能を実現する方法、つまり "Incr Pool Size" または "Decr Pool Size" を制御する方法を尋ねました。ORACLEと同様に 、それを達成するための他の可能な方法を見つけます。

4

3 に答える 3

6

Decr Pool SizeSqlConnection を使用しているため、 orはサポートされていませんIncr Pool Size。このプロパティはOracleConnectionでサポートされています

この記事を確認してください: DotNet の接続プール

記事から:

SQL Server 以外の .NET データ プロバイダーを使用している場合は、ドキュメントを参照してください。他のデータ プロバイダーには、より多くのプーリング オプションがある場合があります。良い例は、Oracle Data Provider です。これは、接続プールの縮小または拡大方法を制御するための Decr Pool Size と Incr Pool Size の 2 つのオプションを提供します。

于 2012-07-11T07:14:18.023 に答える
1

受け入れられるキーワードのリストは、MSDN に記載されています。どちらDecr Pool SizeIncr Pool Sizeそこにリストされていません。

于 2012-07-11T07:16:45.917 に答える
1

SqlServer データベースに対してOracle 接続文字列の構文を使用しています。

DECR POOL SIZEINCR POOL SIZESqlServer 接続ではサポートされていません。

これらの 2 つのパーツを接続から取り外すだけです。また、これはデフォルト値であるため
、削除することをお勧めします。 初期の最小サイズを持つ特別な要件がない場合は、 を削除することもできますMax Pool Size=100;
Min Pool Size=100;

于 2012-07-11T07:17:43.487 に答える