C#访问数据库类

using  System;
using  System.Collections.Generic;
using  System.Text;
using  System.Data;
using  System.Data.Common;
using  System.Configuration;
using  System.Collections;

namespace  DBUtility
{
    
public   class  DataAccess
    {
        
private   string  _confirString  =   " ConnectionString " ;
        
public  DataAccess()
        {
        }

        
///   <param name="configString"> app.config 关键字 </param>
         public  DataAccess( string  configString)
        {
            ConfigString 
=  configString;
        }

        
///   <summary>
        
///  属性,设置数据库连接字符串
        
///   </summary>
         public   string  ConfigString
        {
            
get
            {
                
return  _confirString;
            }
            
set
            {
                _confirString 
=  value;
            }
        }

        
// ===========================================GetProviderName=============================

        
#region  获得数据库的类型public string GetProviderName(string ConfigString)
        
///   <summary>
        
///  返回数据提供者
        
///   </summary>
        
///   <returns> 返回数据提供者 </returns>
         public   string  GetProviderName( string  ConfigString)
        {

            ConnectionStringSettingsCollection ConfigStringCollention 
=  ConfigurationManager.ConnectionStrings;
            
if  (ConfigStringCollention  ==   null   ||  ConfigStringCollention.Count  <=   0 )
            {
                
throw   new  Exception( " app.config 中无连接字符串! " );
            }
            ConnectionStringSettings StringSettings 
=   null ;
            
if  (ConfigString  ==   string .Empty)
            {
                StringSettings 
=  ConfigurationManager.ConnectionStrings[ " ConnectionString " ];
            }
            
else
            {
                StringSettings 
=  ConfigurationManager.ConnectionStrings[ConfigString];
            }
            
return  StringSettings.ProviderName;
        }
        
///   <summary>
        
///  返回数据提供者
        
///   </summary>
        
///   <returns></returns>
         public   string  GetProviderName()
        {
            
return  GetProviderName(ConfigString);
        }
        
#endregion

        
// ===========================================获得连接字符串==============================

        
#region  获得连接字符串

        
///   <summary>
        
///  获得连接字符串
        
///   </summary>
        
///   <returns></returns>
         private   string  GetConnectionString( string  ConfigString)
        {
            ConnectionStringSettingsCollection ConfigStringCollention 
=  ConfigurationManager.ConnectionStrings;
            
if  (ConfigStringCollention  ==   null   ||  ConfigStringCollention.Count  <=   0 )
            {
                
throw   new  Exception( " app.config 中无连接字符串! " );
            }
            ConnectionStringSettings StringSettings 
=   null ;
            
if  (ConfigString  ==   string .Empty)
            {
                StringSettings 
=  ConfigurationManager.ConnectionStrings[ " ConnectionString " ];
            }
            
else
            {
                StringSettings 
=  ConfigurationManager.ConnectionStrings[ConfigString];
            }
            
return  StringSettings.ConnectionString;

        }
        
private   string  GetConnectionString()
        {
            
return  GetConnectionString(ConfigString);
        }

        
#endregion

        
// ===========================================GetDbproviderFactory========================

        
#region  返回数据工厂  public DbProviderFactory GetDbProviderFactory()
        
///   <summary>
        
///  返回数据工厂
        
///   </summary>
        
///   <returns></returns>
         private  DbProviderFactory GetDbProviderFactory()
        {
            DbProviderFactory f 
=   null ;
            
string  ProviderName  =  GetProviderName();
            
switch  (ProviderName)
            {
                
case   " System.Data.SqlClient " :
                    f 
=  GetDbProviderFactory( " System.Data.SqlClient " );
                    
break ;
                
case   " System.Data.OracleClient " :
                    f 
=  GetDbProviderFactory( " System.Data.OracleClient " );
                    
break ;
                
case   " System.Data.OleDb " :
                    f 
=  GetDbProviderFactory( " System.Data.OleDb " );
                    
break ;
                
default :
                    f 
=  GetDbProviderFactory( " System.Data.SqlClient " );
                    
break ;
            }
            
return  f;
        }

        
///   <summary>
        
///  返回数据工厂
        
///   </summary>
        
///   <param name="providername"></param>
        
///   <returns></returns>
         private  DbProviderFactory GetDbProviderFactory( string  providername)
        {
            
return  DbProviderFactories.GetFactory(providername);
        }
        
#endregion

        
// ===========================================CreateConnection============================

        
#region  创建数据库连接 public DbConnection CreateConnection()
        
///   <summary>
        
///  创建数据库连接
        
///   </summary>
        
///   <returns></returns>
         private  DbConnection CreateConnection()
        {
            DbConnection con 
=  GetDbProviderFactory().CreateConnection();
            con.ConnectionString 
=  GetConnectionString();

            
return  con;
        }
        
///   <summary>
        
///  创建数据库连接
        
///   </summary>
        
///   <param name="provdername"></param>
        
///   <returns></returns>
         private  DbConnection CreateConnection( string  provdername)
        {
            DbConnection con 
=  GetDbProviderFactory(provdername).CreateConnection();
            con.ConnectionString 
=  GetConnectionString();

            
return  con;

        }
        
#endregion

        
// ===========================================CreateCommand===============================

        
#region  创建执行命令对象 public override DbCommand CreateCommand(string sql, CommandType cmdType, DbParameter[] parameters)
        
///   <summary>
        
///  创建执行命令对象
        
///   </summary>
        
///   <param name="sql"></param>
        
///   <param name="cmdType"></param>
        
///   <param name="parameters"></param>
        
///   <returns></returns>
         private  DbCommand CreateCommand( string  sql, CommandType cmdType, DbParameter[] parameters)
        {
            DbCommand _command 
=  GetDbProviderFactory().CreateCommand();
            _command.Connection 
=  CreateConnection();
            _command.CommandText 
=  sql;
            _command.CommandType 
=  cmdType;
            
if  (parameters  !=   null   &&  parameters.Length  >   0 )
            {
                
foreach  (DbParameter param  in  parameters)
                {
                    _command.Parameters.Add(param);
                }
            }
            
return  _command;
        }

        
///   <summary>
        
///  创建执行命令对象
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> 执行命令对象实例 </returns>
         private  DbCommand CreateCommand( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  CreateCommand(sql, CommandType.Text, parameters);
        }
        
///   <summary>
        
///  创建执行命令对象
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> 执行命令对象实例 </returns>
         private  DbCommand CreateCommand( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  CreateCommand(sql, cmdtype, parameters);
        }
        
///   <summary>
        
///  创建执行命令对象
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> 执行命令对象实例 </returns>
         private  DbCommand CreateCommand( string  sql, DbParameter[] parameters)
        {
            
return  CreateCommand(sql, CommandType.Text, parameters);
        }
        
#endregion

        
// ===========================================CreateAdapter()=============================

        
#region  创建数据适配器 CreateAdapter(string sql)
        
///   <summary>
        
///  创建数据适配器
        
///   </summary>
        
///   <param name="sql"> SQL,语句 </param>
        
///   <returns> 数据适配器实例 </returns>
         private  DbDataAdapter CreateAdapter( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  CreateAdapter(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  创建数据适配器
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <returns> 数据适配器实例 </returns>
         private  DbDataAdapter CreateAdapter( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  CreateAdapter(sql, cmdtype, parameters);
        }
        
///   <summary>
        
///  创建数据适配器
        
///   </summary>
        
///   <param name="connectionString"> 数据库连接字符串 </param>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> 数据适配器实例 </returns>
         private  DbDataAdapter CreateAdapter( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            DbConnection _connection 
=  CreateConnection();
            DbCommand _command 
=  GetDbProviderFactory().CreateCommand();
            _command.Connection 
=  _connection;
            _command.CommandText 
=  sql;
            _command.CommandType 
=  cmdtype;
            
if  (parameters  !=   null   &&  parameters.Length  >   0 )
            {
                
foreach  (DbParameter _param  in  parameters)
                {
                    _command.Parameters.Add(_param);
                }
            }
            DbDataAdapter da 
=  GetDbProviderFactory().CreateDataAdapter();
            da.SelectCommand 
=  _command;

            
return  da;
        }

        
#endregion

        
// ===========================================CreateParameter=============================

        
#region  生成参数 public override SqlParameter CreateParameter(string field, string dbtype, string value)
        
///   <summary>
        
///  创建参数
        
///   </summary>
        
///   <param name="field"> 参数字段 </param>
        
///   <param name="dbtype"> 参数类型 </param>
        
///   <param name="value"> 参数值 </param>
        
///   <returns></returns>
         private  DbParameter CreateParameter( string  field,  string  dbtype,  string  value)
        {
            DbParameter p 
=  GetDbProviderFactory().CreateParameter();
            p.ParameterName 
=  field;
            p.Value 
=  value;
            
return  p;
        }
        
#endregion

        
// ===========================================ExecuteCommand()============================

        
#region  执行非查询语句,并返回受影响的记录行数 ExecuteCommand(string sql)
        
///   <summary>
        
///  执行非查询语句,并返回受影响的记录行数
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> 受影响记录行数 </returns>
         public   int  ExecuteCommand( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteCommand(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行非查询语句,并返回受影响的记录行数
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <returns> 受影响记录行数 </returns>
         public   int  ExecuteCommand( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteCommand(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行非查询语句,并返回受影响的记录行数
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> 受影响记录行数 </returns>
         public   int  ExecuteCommand( string  sql, DbParameter[] parameters)
        {
            
return  ExecuteCommand(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
/// 批量执行SQL语句 
        
///   </summary>
        
///   <param name="SqlList"> SQL列表 </param>
        
///   <returns></returns>
         public   bool  ExecuteCommand(ArrayList SqlList)
        {
            DbConnection con 
=  CreateConnection();
            con.Open();
            
bool  iserror  =   false ;
            
string  strerror  =   "" ;
            DbTransaction SqlTran 
=  con.BeginTransaction();
            
try
            {
                
for  ( int  i  =   0 ; i  <  SqlList.Count; i ++ )
                {

                    DbCommand _command 
=  GetDbProviderFactory().CreateCommand();
                    _command.Connection 
=  con;
                    _command.CommandText 
=  SqlList[i].ToString();
                    _command.Transaction 
=  SqlTran;
                    _command.ExecuteNonQuery();
                }

            }
            
catch  (Exception ex)
            {
                iserror 
=   true ;
                strerror 
=  ex.Message;

            }
            
finally
            {

                
if  (iserror)
                {
                    SqlTran.Rollback();
                    
throw   new  Exception(strerror);
                }
                
else
                {
                    SqlTran.Commit();
                }
                con.Close();
            }
            
if  (iserror)
            {
                
return   false ;
            }
            
else
            {
                
return   true ;
            }
        }

        
///   <summary>
        
///  执行非查询语句,并返回受影响的记录行数
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> 受影响记录行数 </returns>
         public   int  ExecuteCommand( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            
int  _result  =   0 ;
            DbCommand _command 
=  CreateCommand(sql, cmdtype, parameters);
            
try
            {
                _command.Connection.Open();
                _result 
=  _command.ExecuteNonQuery();
            }
            
catch  (Exception ex)
            {
                
throw   new  Exception(ex.Message);
            }
            
finally
            {
                _command.Connection.Close();
            }
            
return  _result;
        }


        
#endregion

        
// ===========================================ExecuteScalar()=============================

        
#region  执行非查询语句,并返回首行首列的值 ExecuteScalar(string sql)

        
///   <summary>
        
///  执行非查询语句,并返回首行首列的值
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> Object </returns>
         public   object  ExecuteScalar( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteScalar(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行非查询语句,并返回首行首列的值
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <returns> Object </returns>
         public   object  ExecuteScalar( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteScalar(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行非查询语句,并返回首行首列的值
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> Object </returns>
         public   object  ExecuteScalar( string  sql, DbParameter[] parameters)
        {
            
return  ExecuteScalar(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行非查询语句,并返回首行首列的值
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> Object </returns>
         public   object  ExecuteScalar( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            
object  _result  =   null ;
            DbCommand _command 
=  CreateCommand(sql, cmdtype, parameters);
            
try
            {
                _command.Connection.Open();
                _result 
=  _command.ExecuteScalar();
            }
            
catch
            {
                
throw ;
            }
            
finally
            {
                _command.Connection.Close();
            }
            
return  _result;
        }
        
#endregion

        
// ===========================================ExecuteReader()=============================

        
#region  执行查询,并以DataReader返回结果集  ExecuteReader(string sql)
        
///   <summary>
        
///  执行查询,并以DataReader返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> IDataReader </returns>
         public  DbDataReader ExecuteReader( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteReader(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataReader返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <returns> IDataReader </returns>
         public  DbDataReader ExecuteReader( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  ExecuteReader(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataReader返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> IDataReader </returns>
         public  DbDataReader ExecuteReader( string  sql, DbParameter[] parameters)
        {
            
return  ExecuteReader(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataReader返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> IDataReader </returns>
         public  DbDataReader ExecuteReader( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            DbDataReader _result;
            DbCommand _command 
=  CreateCommand(sql, cmdtype, parameters);
            
try
            {
                _command.Connection.Open();
                _result 
=  _command.ExecuteReader(CommandBehavior.CloseConnection);
            }
            
catch
            {
                
throw ;
            }
            
finally
            {

            }
            
return  _result;
        }
        
#endregion

        
// ===========================================GetDataSet()================================

        
#region  执行查询,并以DataSet返回结果集 GetDataSet(string sql)
        
///   <summary>
        
///  执行查询,并以DataSet返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <returns> DataSet </returns>
         public  DataSet GetDataSet( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  GetDataSet(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataSet返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <returns> DataSet </returns>
         public   virtual  DataSet GetDataSet( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            
return  GetDataSet(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataSet返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataSet </returns>
         public   virtual  DataSet GetDataSet( string  sql, DbParameter[] parameters)
        {
            
return  GetDataSet(sql, CommandType.Text, parameters);
        }

        
///   <summary>
        
///  执行查询,并以DataSet返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataSet </returns>
         public   virtual  DataSet GetDataSet( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            DataSet _result 
=   new  DataSet();
            IDataAdapter _dataAdapter 
=  CreateAdapter(sql, cmdtype, parameters);
            
try
            {
                _dataAdapter.Fill(_result);
            }
            
catch
            {
                
throw ;
            }
            
finally
            {
            }
            
return  _result;
        }
        
///   <summary>
        
///  执行查询,并以DataSet返回指定记录的结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="StartIndex"> 开始索引 </param>
        
///   <param name="RecordCount"> 显示记录 </param>
        
///   <returns> DataSet </returns>
         public   virtual  DataSet GetDataSet( string  sql,  int  StartIndex,  int  RecordCount)
        {
            
return  GetDataSet(sql, StartIndex, RecordCount);
        }

        
#endregion

        
// ===========================================GetDataView()===============================

        
#region  执行查询,并以DataView返回结果集   GetDataView(string sql)

        
///   <summary>
        
///  执行查询,并以DataView返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataView </returns>
         public  DataView GetDataView( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            DataView dv 
=  GetDataSet(sql, CommandType.Text, parameters).Tables[ 0 ].DefaultView;
            
return  dv;
        }
        
///   <summary>
        
///  执行查询,并以DataView返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataView </returns>
         public  DataView GetDataView( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            DataView dv 
=  GetDataSet(sql, cmdtype, parameters).Tables[ 0 ].DefaultView;
            
return  dv;
        }
        
///   <summary>
        
///  执行查询,并以DataView返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataView </returns>
         public  DataView GetDataView( string  sql, DbParameter[] parameters)
        {

            DataView dv 
=  GetDataSet(sql, CommandType.Text, parameters).Tables[ 0 ].DefaultView;
            
return  dv;
        }

        
///   <summary>
        
///  执行查询,并以DataView返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataView </returns>
         public  DataView GetDataView( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            DataView dv 
=  GetDataSet(sql, cmdtype, parameters).Tables[ 0 ].DefaultView;
            
return  dv;
        }

        
///   <summary>
        
///  执行查询,并以DataView返回指定记录的结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="StartIndex"> 开始索引 </param>
        
///   <param name="RecordCount"> 显示记录 </param>
        
///   <returns> DataView </returns>
         public  DataView GetDataView( string  sql,  int  StartIndex,  int  RecordCount)
        {
            
return  GetDataSet(sql, StartIndex, RecordCount).Tables[ 0 ].DefaultView;
        }
        
#endregion

        
// ===========================================GetDataTable()==============================

        
#region  执行查询,并以DataTable返回结果集   GetDataTable(string sql)

        
///   <summary>
        
///  执行查询,并以DataTable返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            DataTable dt 
=  GetDataSet(sql, CommandType.Text, parameters).Tables[ 0 ];
            
return  dt;
        }
        
///   <summary>
        
///  执行查询,并以DataTable返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql, CommandType cmdtype)
        {
            DbParameter[] parameters 
=   new  DbParameter[ 0 ];
            DataTable dt 
=  GetDataSet(sql, cmdtype, parameters).Tables[ 0 ];
            
return  dt;
        }
        
///   <summary>
        
///  执行查询,并以DataTable返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql, DbParameter[] parameters)
        {

            DataTable dt 
=  GetDataSet(sql, CommandType.Text, parameters).Tables[ 0 ];
            
return  dt;
        }

        
///   <summary>
        
///  执行查询,并以DataTable返回结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="cmdtype"> 命令类型 </param>
        
///   <param name="parameters"> 参数 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql, CommandType cmdtype, DbParameter[] parameters)
        {
            DataTable dt 
=  GetDataSet(sql, cmdtype, parameters).Tables[ 0 ];
            
return  dt;
        }

        
///   <summary>
        
///  执行查询,并以DataTable返回指定记录的结果集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="StartIndex"> 开始索引 </param>
        
///   <param name="RecordCount"> 显示记录 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql,  int  StartIndex,  int  RecordCount)
        {
            
return  GetDataSet(sql, StartIndex, RecordCount).Tables[ 0 ];
        }

        
///   <summary>
        
///  执行查询,返回以空行填充的指定条数记录集
        
///   </summary>
        
///   <param name="sql"> SQL语句 </param>
        
///   <param name="SizeCount"> 显示记录条数 </param>
        
///   <returns> DataTable </returns>
         public  DataTable GetDataTable( string  sql,  int  SizeCount)
        {
            DataTable dt 
=  GetDataSet(sql).Tables[ 0 ];
            
int  b  =  SizeCount  -  dt.Rows.Count;
            
if  (dt.Rows.Count  <  SizeCount)
            {
                
for  ( int  i  =   0 ; i  <  b; i ++ )
                {
                    DataRow dr 
=  dt.NewRow();
                    dt.Rows.Add(dr);
                }
            }
            
return  dt;
        }

        
#endregion
    }
}

转载于:https://www.cnblogs.com/EasyData/archive/2008/06/02/1212239.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值