/// <summary> /// 条件式の判定結果を返す /// </summary> /// <param name="aDbConn"></param> /// <param name="ifCondition"></param> /// <param name="aCacheStrategy"></param> /// <returns></returns> /// <remarks></remarks> public static bool EvaluateCondition(IDbConn aDbConn , string ifCondition , Tran.CacheStrategy aCacheStrategy) { if (string.IsNullOrEmpty(ifCondition)) { throw new System.ArgumentNullException("ifCondition", "指定された条件式が空です"); } //参照テーブル名を取得するため、ここで仮のSQL文を作成する SqlBuilder conditionSql = new SqlBuilder("SELECT 1 WHERE " + ifCondition); HashSet <string> usedTableNames = conditionSql.GetAllTableNames(); //ダミーテーブルTを除外する //usedTableNames.Remove(conditionSql.GetSrcTableNames()) return(aDbConn.ExecExp(ifCondition, usedTableNames, aCacheStrategy)); }