6.2.4.2 AddToStatementCache
このプロパティがtrue
に設定され、文キャッシングが有効な場合は、実行された文がキャッシュされます。文キャッシングが無効な場合、またはこのプロパティがfalse
に設定されている場合、実行された文はキャッシュされません。
宣言
// C# public bool AddToStatementCache{get; set;}
戻り値
bool
値を戻します。値true
は文がキャシュに追加されていることを示し、false
はそうでないことを示します。
プロパティ値
文キャッシングが有効になっている場合、文の実行時に文がキャッシュされるということを示すbool
値
備考
デフォルトはtrue
です。
文キャッシングが無効な場合、AddToStatementCache
は無視されます。文キャッシングは、Statement
Cache
Size
接続文字列属性を0
より大きい値に設定すると有効になります。
ただし、文キャッシングが有効な場合、このプロパティは文をキャッシュに選択的に追加する方法を提供します。
例
// C# using System; using System.Data; using Oracle.DataAccess.Client; class AddToStatementCacheSample { static void Main() { string constr = "User Id=scott;Password=tiger;Data Source=oracle;" + "statement cache size=10"; OracleConnection con = new OracleConnection(constr); con.Open(); OracleCommand cmd = new OracleCommand("select * from emp", con); if (cmd.AddToStatementCache) Console.WriteLine("Added to the statement cache:" + cmd.CommandText); else Console.WriteLine("Not added to the statement cache:" + cmd.CommandText); // The execution of "select * from emp" will be added to the statement cache // because statement cache size is greater than 0 and OracleCommand's // AddToStatementCache is true by default. OracleDataReader readerEmp = cmd.ExecuteReader(); // Do not add "select * from dept" to the statement cache cmd.CommandText = "select * from dept"; cmd.AddToStatementCache = false; if (cmd.AddToStatementCache) Console.WriteLine("Added to the statement cache:" + cmd.CommandText); else Console.WriteLine("Not added to the statement cache:" + cmd.CommandText); // The execution of "select * from dept" will not be added to the // statement cache because AddToStatementCache is set to false. OracleDataReader readerDept = cmd.ExecuteReader(); // Clean up con.Dispose(); } }