utiliser le système ;
en utilisant System.Configuration ;
en utilisant System.Data ;
en utilisant System.Data.SqlClient ;
en utilisant System.Collections ;
espace de noms MyCorporation.DepartMent.DataBase
{
/// <résumé>
/// 通用数据库类
/// </summary>
Base de données de classe publique
{
chaîne privée ConnStr = null ;
Base de données publique()
{
ConnStr = ConfigurationSettings.AppSettings["ConnStr"];
}
Base de données publique (chaîne Str)
{
essayer
{
this.ConnStr = Str;
}
attraper(Exception ex)
{
jeter ex;
}
}
/// <résumé>
/// 返回connexion对象
/// </summary>
/// <retours></retours>
public SqlConnection ReturnConn()
{
SqlConnection Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
retournez à Conn ;
}
public void Dispose (SqlConnection Conn)
{
si (Conn! = nul)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
}
/// <résumé>
/// Utilisation de SQL
/// </summary>
/// <param name="SQL"></param>
public void RunProc (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
Commande SQLCommand ;
Cmd = CreateCmd(SQL, Conn);
essayer
{
Cmd.ExecuteNonQuery();
}
attraper
{
lancer une nouvelle exception (SQL);
}
Éliminer(Conn);
retour;
}
/// <résumé>
/// Utilisation de SQL avec DataReader
/// </summary>
/// <param name="SQL"></param>
/// <returns>Utilisation de SQLDataReader.</returns>
public SqlDataReader RunProcGetReader (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
Commande SQLCommand ;
Cmd = CreateCmd(SQL, Conn);
SqlDataReader Dr ;
essayer
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
attraper
{
lancer une nouvelle exception (SQL);
}
//Jeter(Conn);
revenez Dr;
}
/// <résumé>
/// 生成Command对象
/// </summary>
/// <param name="SQL"></param>
/// <param name="Conn"></param>
/// <retours></retours>
public SqlCommand CreateCmd (chaîne SQL, SqlConnection Conn)
{
Commande SQLCommand ;
Cmd = nouveau SqlCommand(SQL, Conn);
retourner Cmd ;
}
/// <résumé>
/// 生成Command对象
/// </summary>
/// <param name="SQL"></param>
/// <retours></retours>
public SqlCommand CreateCmd (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
Commande SQLCommand ;
Cmd = nouveau SqlCommand(SQL, Conn);
retourner Cmd ;
}
/// <résumé>
/// 返回adaptateur对象
/// </summary>
/// <param name="SQL"></param>
/// <param name="Conn"></param>
/// <retours></retours>
public SqlDataAdapter CreateDa (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SQLDataAdapter Da ;
Da = nouveau SqlDataAdapter (SQL, Conn) ;
retourner Da;
}
/// <résumé>
/// SQL Server, SQL Server et DataSet
/// </summary>
/// <param name="procName">SQL语句</param>
/// <param name="prams">DataSet</param>
public DataSet RunProc (chaîne SQL, DataSet Ds)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SQLDataAdapter Da ;
//Da = CreateDa(SQL, Conn);
Da = nouveau SqlDataAdapter(SQL,Conn);
essayer
{
Da.Fill(Ds);
}
attraper (Exception Err)
{
lancer Err;
}
Éliminer(Conn);
retourner Ds ;
}
/// <résumé>
/// SQL Server, SQL Server et DataSet
/// </summary>
/// <param name="procName">SQL语句</param>
/// <param name="prams">DataSet</param>
/// <param name="dataReader">表名</param>
public DataSet RunProc (chaîne SQL, DataSet Ds, chaîne nom de table)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SQLDataAdapter Da ;
Da = CréerDa(SQL);
essayer
{
Da.Fill(Ds,nom de la table);
}
attraper (exception Ex)
{
lancer Ex;
}
Éliminer(Conn);
retourner Ds ;
}
/// <résumé>
/// SQL Server, SQL Server et DataSet
/// </summary>
/// <param name="procName">SQL语句</param>
/// <param name="prams">DataSet</param>
/// <param name="dataReader">表名</param>
public DataSet RunProc (string SQL, DataSet Ds, int StartIndex, int PageSize, chaîne nom de table)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SqlDataAdapter Da ;
Da = CréerDa(SQL);
essayer
{
Da.Fill(Ds, StartIndex, PageSize, tablename);
}
attraper (exception Ex)
{
lancer Ex;
}
Éliminer(Conn);
retourner Ds ;
}
/// <résumé>
/// 检验是否存在数据
/// </summary>
/// <retours></retours>
public bool ExistDate (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SqlDataReader Dr ;
Dr = CreateCmd(SQL,Conn).ExecuteReader();
si (Dr.Read())
{
Éliminer(Conn);
renvoie vrai ;
}
autre
{
Éliminer(Conn);
renvoie faux ;
}
}
/// <résumé>
/// Les applications SQL
/// </summary>
/// <returns>字符串</returns>
chaîne publique ReturnValue (chaîne SQL)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
résultat de chaîne ;
SqlDataReader Dr ;
essayer
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
si (Dr.Read())
{
résultat = Dr[0].ToString();
Dr.Close();
}
autre
{
résultat = "" ;
Dr.Close();
}
}
attraper
{
lancer une nouvelle exception (SQL);
}
Éliminer(Conn);
renvoyer le résultat ;
}
/// <résumé>
/// 返回SQL语句第一列,第ColumnI列,
/// </summary>
/// <returns>字符串</returns>
chaîne publique ReturnValue (chaîne SQL, int ColumnI)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
résultat de chaîne ;
SqlDataReader Dr ;
essayer
{
Dr = CreateCmd(SQL,Conn).ExecuteReader();
}
attraper
{
lancer une nouvelle exception (SQL);
}
si (Dr.Read())
{
résultat = Dr[ColonneI].ToString();
}
autre
{
résultat = "" ;
}
Dr.Close();
Éliminer(Conn);
renvoyer le résultat ;
}
/// <résumé>
/// exécute la commandesql.
/// </summary>
/// <param name="procName">存储过程名.</param>
/// <param name="prams">存储过程入参数组.</param>
/// <returns>sqlcommand对象.</returns>
public SqlCommand CreateCmd (string procName, SqlParameter[] landaus)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure ;
if (landaus != null)
{
foreach (paramètre SqlParameter dans les poussettes)
{
si (paramètre ! = null)
{
Cmd.Parameters.Add(paramètre);
}
}
}
retourner Cmd ;
}
/// <résumé>
/// Utilisation de SQLCommand
/// </summary>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程参数</param>
/// <returns>SqlCommand对象</returns>
privé SqlCommand CreateCmd (string procName, SqlParameter[] landaus, SqlDataReader Dr)
{
Connexion SQL ;
Conn = nouveau SqlConnection(ConnStr);
Conn.Open();
SqlCommand Cmd = new SqlCommand(procName, Conn);
Cmd.CommandType = CommandType.StoredProcedure ;
if (landaus != null)
{
foreach (paramètre SqlParameter dans les poussettes)
Cmd.Parameters.Add(paramètre);
}
Cmd.Parameters.Add(
nouveau SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, faux, 0, 0,
string.Empty, DataRowVersion.Default, null));
retourner Cmd ;
}
/// <résumé>
/// 运行存储过程,返回.
/// </summary>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程参数</param>
/// <param name="dataReader">SqlDataReader</param>
public void RunProc (string procName, SqlParameter[] landaus, SqlDataReader Dr)
{
SqlCommand Cmd = CreateCmd(procName, prams, Dr);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
retour;
}
/// <résumé>
/// 运行存储过程,返回.
/// </summary>
/// <param name="procName">存储过程名</param>
/// <param name="prams">存储过程参数</param>
chaîne publique RunProc (string procName, SqlParameter[] landaus)
{
SqlDataReader Dr ;
SqlCommand Cmd = CreateCmd(procName, prams);
Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
si (Dr.Read())
{
return Dr.GetValue(0).ToString();
}
autre
{
retour "";
}
}
/// <résumé>
/// 运行存储过程,返回ensemble de données.
/// </summary>
/// <param name="procName">存储过程名.</param>
/// <param name="prams">存储过程入参数组.</param>
/// <returns>ensemble de données.</returns>
public DataSet RunProc (string procName, SqlParameter [] landaus, DataSet Ds)
{
SqlCommand Cmd = CreateCmd(procName,prams);
SqlDataAdapter Da = nouveau SqlDataAdapter(Cmd);
essayer
{
Da.Fill(Ds);
}
attraper (exception Ex)
{
lancer Ex;
}
retourner Ds ;
}
}
}