プライマリ・コンテンツに移動
Oracle® Data Provider for .NET開発者ガイド
ODAC 12.2c リリース1 (12.2.0.1) for Microsoft Windows
E88311-03
目次へ移動
目次
索引へ移動
索引

前
次

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();
  }
}