一、连接字符串(使用配置文件)
添加对 System.Configuration的引用,并且在封装类中引入该namespace
/// <summary> /// 功能:读取配置文件中的连接字符串 /// 返回值类型:string /// </summary> /// <param name="conName">参数:配置文件中的连接字符串名称</param> /// <returns>返回值:string 连接字符串</returns> public static string GetConnectString(string conName) { try { return ConfigurationManager.ConnectionStrings[conName].ConnectionString; } catch (Exception e) { throw e; } }
二、SqlConnection对象
/// <summary> /// 功能:根据给定的连接字符串创建一个SqlConnection对象 /// 返回类型:SqlConnection /// </summary> /// <param name="conStr">参数:连接字符串</param> /// <returns>返回值:SqlConnection对象</returns> public static SqlConnection GetConnect(string conStr) { return new SqlConnection(conStr); }
/// <summary> /// 功能:打开数据库连接 /// </summary> /// <param name="Con">参数:SqlConnection对象</param> public static void OpenDBConnet(SqlConnection Con) { try { if (Con.State == ConnectionState.Open) { return; } else { Con.Open(); } } catch (SqlException e) { throw e; } }
/// <summary> /// 功能:关闭数据库连接 /// </summary> /// <param name="Con">参数:SqlConnection对象</param> public static void CloseDBConnect(SqlConnection Con) { try { if (Con.State == ConnectionState.Closed) { return; } else { Con.Close(); } } catch (SqlException e) { throw e; } }
三、同步操作数据库
SqlDataReader对象
/// <summary> /// 功能:执行存储过程并返回一个SqlDataReader对象 /// </summary> /// <param name="sql">参数:存储过程名</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:SqlParameter参数数组</param> /// <returns>返回值:SqlDataReader对象</returns> public static SqlDataReader GetSdrBySp(string sql, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; try { Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.StoredPRocedure; foreach (SqlParameter parameter in parameters) { Cmd.Parameters.Add(parameter); } } catch (SqlException s) { throw s; } return Cmd.ExecuteReader(CommandBehavior.CloseConnection); }
/// <summary> /// 功能:执行T-SQL语句语句并返回一个SqlDataReader对象 /// </summary> /// <param name="sql">参数:T-SQL语句</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:SqlParameter参数数组</param> /// <returns>返回值:SqlDataReader对象</returns> public static SqlDataReader GetSdrByTSql(string sql, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; try { Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.Text; foreach (SqlParameter parameter in parameters) { Cmd.Parameters.Add(parameter); } } catch (SqlException s) { throw s; } return Cmd.ExecuteReader(CommandBehavior.CloseConnection); }
ExecuteNonQuery
/// <summary> /// 功能:执行存储过程返回受影响的行数 /// 返回类型:int /// </summary> /// <param name="sql">参数:存储过程名</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:SqlParameter参数数组</param> /// <returns>返回值:int 受影响的行数</returns> public static int GetEnqBySp(string sql, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; try { Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.StoredProcedure; foreach (SqlParameter parameter in parameters) { Cmd.Parameters.Add(parameter); } } catch (SqlException s) { throw s; } return Cmd.ExecuteNonQuery(); }
/// <summary> /// 功能:执行T-SQL语句返回受影响的行数 /// </summary> /// <param name="sql">参数:T-SQL语句</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:SqlParameter参数数组</param> /// <returns>返回值:int 受影响的行数</returns> public static int GetEnqByTSql(string sql, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; try { Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.Text; foreach (SqlParameter parameter in parameters) { Cmd.Parameters.Add(parameter); } } catch (SqlException s) { throw s; } return Cmd.ExecuteNonQuery(); }
ExecuteScalar
/// <summary> /// 功能:通过T-SQl语句执行SqlCommand的ExecuteScalar()方法返回object类型对象 /// </summary> /// <param name="sql">参数:T-SQL语句</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:SqlParameter参数数组</param> /// <returns>返回值:object对象</returns> public static object GetEScalarByTSql(string sql, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; try { Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.Text; foreach (SqlParameter parameter in parameters) { Cmd.Parameters.Add(parameter); } } catch (SqlException s) { throw s; } return Cmd.ExecuteScalar(); }
/// <summary> /// 功能:通过执行T-SQL语句返回一个DataSet数据集对象 /// </summary> /// <param name="sql">参数:T-SQL语句</param> /// <param name="tableName">参数:DataSet表名</param> /// <param name="Con">参数:SqlConnection对象</param> /// <param name="parameters">参数:可变SqlParameter参数数组</param> /// <returns>返回值:DataSet数据集对象</returns> public static DataSet GetDsByTSql(string sql, string tableName, SqlConnection Con, params SqlParameter[] parameters) { SqlCommand Cmd = null; DataSet Ds = null; SqlDataAdapter Sda = null; try { Ds = new DataSet(tableName); Cmd = new SqlCommand(sql, Con); DBHelper.OpenDBConnet(Con); Cmd.CommandType = CommandType.Text;
新闻热点
疑难解答