oraclehelper
来源:互联网 发布:宿迁湖滨新区网络问政 编辑:程序博客网 时间:2024/05/21 03:18
using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.OracleClient;namespace Lee.Common{ public class OracleHelper { // 数据库连接字符串 public static string ConnectionString; #region 执行带参数的SQL语句 /// <summary> /// 执行SQL语句,返回影响的记录条数(update, delete) /// </summary> /// <param name="SQLString">SQL语句</param> /// <param name="cmdParam">参数</param> /// <returns>影响的记录条数</returns> public static int ExecuteSQL(string SQLString, params OracleParameter[] cmdParam) { using (OracleConnection connection = new OracleConnection(ConnectionString)) { using (OracleCommand command = new OracleCommand()) { try { PrepareCommand(command, connection, null, SQLString, cmdParam); int rows = command.ExecuteNonQuery(); //执行SQL语句 command.Parameters.Clear(); return rows; } catch (OracleException ex) { throw ex; } } } } /// <summary> /// 执行SQL语句,返回查询结果(object) /// </summary> /// <param name="SQLString">SQL语句</param> /// <param name="cmdParam">参数</param> /// <returns>查询结果(object)</returns> public static object GetSingleObject(string SQLString, params OracleParameter[] cmdParam) { using (OracleConnection connection = new OracleConnection(ConnectionString)) { using (OracleCommand command = new OracleCommand()) { try { PrepareCommand(command, connection, null, SQLString, cmdParam); object obj = command.ExecuteScalar(); command.Parameters.Clear(); if ((Object.Equals(obj, null)) || (object.Equals(obj, System.DBNull.Value))) { return null; } else { return obj; } } catch (OracleException ex) { throw ex; } } } } /// <summary> /// 执行SQL语句,返回DataSet (select) /// </summary> /// <param name="SQLString"></param> /// <param name="cmdParam"></param> /// <returns></returns> public static DataSet Query(string SQLString, params OracleParameter[] cmdParam) { using (OracleConnection connection = new OracleConnection(ConnectionString)) { using (OracleCommand command = new OracleCommand()) { PrepareCommand(command, connection, null, SQLString, cmdParam); using (OracleDataAdapter adapter = new OracleDataAdapter(command)) { DataSet ds = new DataSet(); try { adapter.Fill(ds, "ds"); command.Parameters.Clear(); } catch (OracleException ex) { throw ex; } return ds; } } } } private static void PrepareCommand(OracleCommand command, OracleConnection connection, OracleTransaction trans, string cmdText, OracleParameter[] cmdParam) { if (connection.State != ConnectionState.Open) { connection.Open(); } command.Connection = connection; command.CommandText = cmdText; command.CommandType = CommandType.Text; if (trans != null) command.Transaction = trans; if (cmdParam != null) { foreach (OracleParameter param in cmdParam) { command.Parameters.Add(param); } } } #endregion }}