分享

DBSP

 昵称32297401 2016-04-08
using System; using System.Data; using System.Data.SqlClient; using System.Collections; namespace StudyV.DBUtility { /// /// 调用存储过程工具类 /// public class DBSP: System.Object { /// /// 数据库连接列表 /// private SqlConnection m_SqlConnection ; /// /// 屏蔽初始化 /// private DBSP() { } /// /// 初始化时,输入存储过程名称 /// (string) 存储过程名称 /// public DBSP(string p_SPName) { FCommand.CommandType = CommandType.StoredProcedure; FCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("ReturnValue",SqlDbType.BigInt,64,ParameterDirection.ReturnValue,false,0,0,string.Empty,DataRowVersion.Default,null)); FCommand.CommandText = p_SPName; FCommand.Connection = GetSqlConnection(); } public DBSP(string p_SPName,bool p_IsSqlText) { FCommand.CommandType = CommandType.Text; FCommand.CommandText = p_SPName; FCommand.Connection = GetSqlConnection(); } /// /// 数据库操作命令 /// private SqlCommand FCommand = new SqlCommand(); /// /// 数据适配器 /// private SqlDataAdapter FDataAdapter = new SqlDataAdapter(); /// /// 调用后产生的数据集 /// private DataSet FDataSet = new DataSet(); /// /// 查询数据集 /// public DataView QueryData() { try { FDataSet.Clear(); FDataAdapter.SelectCommand = FCommand; FDataAdapter.Fill(FDataSet, "SQLTable"); DisposeConnection(); return FDataSet.Tables["SQLTable"].DefaultView; } finally { } } public DataView ExecuteDataset(int pageIndex, int pageSize) { int firstPage = pageIndex * pageSize; try { FDataSet.Clear(); FDataAdapter.SelectCommand = FCommand; FDataAdapter.Fill(FDataSet, firstPage, pageSize, "SQLTable"); DisposeConnection(); return FDataSet.Tables["SQLTable"].DefaultView; } catch { throw; } finally { } } /// /// 查询后返回单个数据 /// public DBDataItem QuerySingleData() { DBDataItem DataItem = null; object Data = null; try { Data = FCommand.ExecuteScalar(); } finally { DataItem = new DBDataItem(Data); DisposeConnection(); } return DataItem; } /// /// 查询后返回单列数据集 /// public ArrayList QueryDataArray() { ArrayList DataList = new ArrayList(); DataView dv = QueryData(); DisposeConnection(); for(int i = 0; i /// 查询并返回哈希表 /// public Hashtable QueryDataHashtable() { Hashtable DataList = new Hashtable(); DataView dv = QueryData(); for(int i = 0; i /// 执行存储过程,不返回数据 /// public void Execute() { try { FCommand.ExecuteNonQuery(); DisposeConnection(); } finally { } } /// /// 得取存储过程返回值 /// /// public object GetReturnValue() { return this.FCommand.Parameters["ReturnValue"].Value; } /// /// 主动摧毁,减少内存消耗 /// public void Dispose() { DisposeConnection(); if (m_SqlConnection != null) m_SqlConnection.Dispose(); if (FDataSet!=null) FDataSet.Dispose(); if (FCommand!=null) FCommand.Dispose(); if (FDataAdapter!=null) FDataAdapter.Dispose(); } /// /// 随机获取数据库连接 /// /// private SqlConnection GetSqlConnection() { if (m_SqlConnection == null) { m_SqlConnection = new SqlConnection(); m_SqlConnection.ConnectionString = GetConnectionString(); } m_SqlConnection.Open(); return m_SqlConnection; } private void DisposeConnection() { if (this.m_SqlConnection.State == ConnectionState.Open) this.m_SqlConnection.Close(); } //private static SqlConnection GetSqlConnection() //{ // int i = GetRandomInt(); // if (SqlConnectionList[i].State == ConnectionState.Closed) // { // SqlConnectionList[i].ConnectionString = GetConnectionString(); // SqlConnectionList[i].Open(); // } // return SqlConnectionList[i]; //} /// /// 获取连接字符串 /// private static string GetConnectionString() { return System.Configuration.ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; } /// /// 获取随机数 /// /// private static int GetRandomInt() { Random ro = new Random(); return ro.Next(5); } /// /// 存储过程参数集(只读) /// public SqlParameterCollection Paramers { get { return FCommand.Parameters; } } } }

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多