/// <summary> /// SQL実行 /// </summary> /// <param name="sSQL">実行するSQL</param> /// <param name="prms">パラメータ名</param> /// <returns>実行結果数</returns> public int ExecuteSQL(string sSQL, OraParams prms) { if (vMconnection == null) { vMappLog.Warn("DB接続がOpenしていません"); throw new OraConnectException("DB接続がOpenしていません"); } //SQLLog出力 this.LoggingSQL(sSQL, prms); using (OracleCommand cmd = new OracleCommand(sSQL, vMconnection, vMtran)) { if (vMtran != null) { //トランザクション設定 cmd.Transaction = vMtran; } cmd.CommandType = CommandType.Text; if (prms != null && prms.Count > 0) { AddParam(cmd, prms); } return(cmd.ExecuteNonQuery()); } }
/// <summary> /// パラメータの追加 /// </summary> /// <param name="cmd">ORACLEコマンドクラス</param> /// <param name="prms">パラメータ</param> private void AddParam(OracleCommand cmd, OraParams prms) { foreach (OracleParameter prm in prms) { cmd.Parameters.Add(prm); } }
/// <summary> /// データテーブルの取得 /// </summary> /// <param name="sSQL">実行するSQL</param> /// <param name="prms">実行時パラメータ</param> /// <returns>取得したデータテーブル</returns> public DataTable ExecuteDataTable(string sSQL, OraParams prms) { if (vMconnection == null) { vMappLog.Warn("DB接続がOpenしていません"); throw new OraConnectException("DB接続がOpenしていません"); } //SQLLog出力 this.LoggingSQL(sSQL, prms); DataTable dt = new DataTable(); using (OracleDataAdapter da = new OracleDataAdapter()) { using (OracleCommand cmd = new OracleCommand(sSQL, vMconnection, vMtran)) { cmd.CommandType = CommandType.Text; if (prms != null && prms.Count > 0) { AddParam(cmd, prms); } da.SelectCommand = cmd; da.Fill(dt); } return(dt); } }
/// <summary> /// SQLログ出力 /// </summary> /// <param name="sSQL">SQL</param> /// <param name="prms">パラメータ</param> private void LoggingSQL(string sSQL, OraParams prms) { //SQLLog vMsqlLog.Info(string.Format("実行SQL:{0}", sSQL)); if (prms != null) { if (prms.Count > 0) { vMsqlLog.Info("実行SQLパラメータ-->"); } foreach (OracleParameter LvPrm in prms) { if (LvPrm.Value != null) { vMsqlLog.Info(string.Format("{0}:{1}", LvPrm.ParameterName, LvPrm.Value.ToString())); } else { vMsqlLog.Info(LvPrm.ParameterName + ":"); } } } }