zoukankan      html  css  js  c++  java
  • 通用数据库连接执行类(SQL)

    using System;
    using System.Data;
    using System.Data.SqlClient;
     
    namespace Public
    {
         ///<summary>
         /// CustomADO 数据连接执行类。
         ///</summary>
         public class CustomADO
         {
     
             #region定义或创建类私有变量或对象
     
             private string _connstr;         //连接字符串存储变量
             private string _procedure;       //存储过程名或数据命令字符串变量
             private bool _isprocedure;      //是否使用存储过程
             private SqlConnection _conn;     //连接对象
             private SqlCommand _comm;        //数据命令对象
             private SqlDataReader _dr;       //定义数据读取器
             private DataSet _ds;             //定义数据存储器
            
             #endregion
     
             #region构造函数
     
             ///<summary>
             ///构造函数重载1
             ///</summary>
             public CustomADO()
             {
                  _connstr = null;
                  _procedure = null;
                  _isprocedure = false;
     
                  _conn = new SqlConnection();
                  _comm = new SqlCommand();
            }
     
             ///<summary>
             ///构造函数重载2
             ///</summary>
             ///<param name="connstring">数据库连接字符串</param>
             ///<param name="procedure">存储过程或SQL命令</param>
             ///<param name="isprocedure">是否使用存储过程</param>
             public CustomADO(string connstring,string procedure,bool isprocedure)
             {
                  _connstr = connstring;
                  _procedure = procedure;
                  _isprocedure = isprocedure;
     
                  _conn = new SqlConnection();
                  _comm = new SqlCommand();
             }
     
             #endregion
     
             #region属性
     
             ///<summary>
             ///设置或获取数据库连接字符串
             ///</summary>
             public string ConnString
             {
                  get
                  {
                       return _connstr;
                  }
     
                  set
                  {
                       _connstr = value;
     
                       _conn.ConnectionString = _connstr;
                       _comm.Connection = _conn;
                  }
             }
     
             ///<summary>
             ///设置或获取存储过程名或SQL命令字符串
             ///</summary>
             public string Procedure
             {
                  get
                  {
                       return _procedure;
                  }
     
                  set
                  {
                       _procedure = value;
     
                       _comm.CommandText = _procedure;
                  }
             }
     
             ///<summary>
             ///设置是否存储过程属性
             ///</summary>
             public bool IsProcedure
             {
                  set
                  {
                       _isprocedure = value;
     
                       if (_isprocedure)
                       {
                           _comm.CommandType = CommandType.StoredProcedure;
                       }
                       else
                       {
                           _comm.CommandType = CommandType.Text;
                       }
                  }
             }
     
             #endregion
     
             #region方法
     
             ///<summary>
             ///打开连接
             ///</summary>
             public void OpenConnection()
             {
                  _conn.Open();
             }
     
             ///<summary>
             ///关闭连接和数据读取器并清空数据集合
             ///</summary>
             public void CloseConnection()
             {
                  _conn.Close();
             }
     
             ///<summary>
             ///销毁连接对象和方法
             ///</summary>
             public void Dispost()
             {
                  if (_ds != null)
                  {
                       _ds.Clear();
                  }
     
                  if (_dr!=null)
                  {
                       _dr.Close();
                  }
                  _comm.Dispose();
                  _conn.Close();
                  _conn.Dispose();
             }
     
             ///<summary>
             ///添加参数重载1
             ///</summary>
             ///<param name="dbtype">参数类型</param>
             ///<param name="parametername">参数名</param>
             ///<param name="pvalue">参数值</param>
             public void AddParameter(DbType dbtype,string parametername,object pvalue)
             {
                  SqlParameter p = new SqlParameter();
                 
                  p.DbType = dbtype;
                  p.ParameterName = parametername;
                  p.Value = pvalue;
     
                  _comm.Parameters.Add(p);
             }
     
             ///<summary>
             ///添加参数重载2
             ///</summary>
             ///<param name="dbtype">参数类型</param>
             ///<param name="parametername">参数名</param>
             ///<param name="pvalue">参数值</param>
             ///<param name="parameterdirection">参数类型</param>
             public void AddParameter(DbType dbtype,string parametername,object pvalue,ParameterDirection parameterdirection)
             {
                  SqlParameter p = new SqlParameter();
                 
                  p.DbType = dbtype;
                  p.ParameterName = parametername;
                  p.Value = pvalue;
                  p.Direction = parameterdirection;
     
                  _comm.Parameters.Add(p);
             }
     
             ///<summary>
             ///添加返回参数
             ///</summary>
             ///<param name="dbtype">DbType参数类型</param>
             ///<param name="parametername">参数名</param>
             public void AddParameterReturnValue(DbType dbtype,string parametername)
             {
                  SqlParameter p = new SqlParameter();
                p.DbType = dbtype;
                  p.ParameterName = parametername;
                  p.Direction = ParameterDirection.ReturnValue;
     
                  _comm.Parameters.Add(p);
             }
     
             ///<summary>
             ///返回DataSet对象
             ///</summary>
             ///<returns>执行数据命令后返回的DataSet对象</returns>
             public DataSet ExecuteDataSet()
             {
                  _ds = new DataSet();
                  SqlDataAdapter da = new SqlDataAdapter();
                  da.SelectCommand = _comm;
                  da.Fill(_ds);
                  return _ds;
             }
     
             ///<summary>
             ///返回DataReader对象 重载1
             ///</summary>
             ///<returns>数据读取器</returns>
             public SqlDataReader ExecuteDataReader()
             {
                  _dr = _comm.ExecuteReader();
     
                  return _dr;
             }
     
             ///<summary>
             ///返回DataReader对象 重载2
             ///</summary>
             ///<param name="behavior">CommandBehavior参数,对参数结果的数据库影响说明</param>
             ///<returns>数据读取器</returns>
             public SqlDataReader ExecuteDataReader(CommandBehavior behavior)
             {
                  _dr = _comm.ExecuteReader(behavior);
     
                  return _dr;
             }
     
             ///<summary>
             ///执行数据命令并返回影响行数
             ///</summary>
             public int ExecuteNonQuery()
             {
                  return _comm.ExecuteNonQuery();
             }
     
             ///<summary>
             ///通过参数名获得参数值
             ///</summary>
             ///<param name="parametername">参数名</param>
             ///<returns>返回参数值</returns>
             public object GetParameterValue(string parametername)
             {
                  object returnvalue;
     
                  returnvalue = _comm.Parameters[parametername].Value;
                 
                  return returnvalue;
             }
     
             #endregion
     
         }
    }
     
  • 相关阅读:
    ESRI系列产品报价表(ArcGIS 9.2系列)
    如何将区域插入到表中【转载】
    MapInfo注记的数据库存放解决方案
    最短路径问题的算法实现【转载】
    Web Services
    MapX从数据库读取数据形成新图层【转载】
    Hessian连接超时设置
    MINA学习
    Hessian解析及应用(整合Spring)
    Ant使用
  • 原文地址:https://www.cnblogs.com/ZetaChow/p/2237454.html
Copyright © 2011-2022 走看看