public static object ExecuteScalar(string sql, Dictionary <string, object> parameters = null, CustomConnection connection = null) { object result = null; connection = connection ?? new OracleConnection(); IDbCommand command = null; try { connection.Connect(); command = connection.CreateCommand(); command.CommandText = sql; if (parameters != null) { command.AddParameters(parameters); } result = command.ExecuteScalar(); } catch (Exception ex) { throw; } finally { connection.Disconnect(); } return(result); }
public static bool Any(string sql, Dictionary <string, object> parameters = null, CustomConnection connection = null) { sql = string.Format("select count(0) from ({0}) t", sql); var result = Convert.ToInt32(ExecuteScalar(sql, parameters, connection)); return(result != 0); }
public static List <Dictionary <string, object> > ExecuteQuery(string sql, Dictionary <string, object> parameters = null, CustomConnection connection = null) { var list = new List <Dictionary <string, object> >(); IDataReader dataReader = null; IDbCommand command = null; connection = connection ?? new OracleConnection(); try { connection.Connect(); command = connection.CreateCommand(); command.CommandText = sql; if (parameters != null) { command.AddParameters(parameters); } dataReader = command.ExecuteReader(); while (dataReader.Read()) { var dictionary = new Dictionary <string, object>(); for (int i = 0; i < dataReader.FieldCount; i++) { dictionary.Add(dataReader.GetName(i), dataReader.GetValue(i)); } list.Add(dictionary); } } catch (Exception ex) { throw ex; } finally { if (dataReader != null) { dataReader.Close(); } connection.Disconnect(); } return(list); }
public static int ExecuteNonQuery(string sql, Dictionary <string, object> parameters = null, CustomConnection connection = null) { int affectedRowsCount; connection = connection ?? new OracleConnection(); IDbCommand command = null; try { connection.Connect(); command = connection.CreateCommand(); command.CommandText = sql; if (parameters != null) { command.AddParameters(parameters); } affectedRowsCount = command.ExecuteNonQuery(); } catch (Exception ex) { throw; } finally { connection.Disconnect(); } return(affectedRowsCount); }