哈喽,你好啊,我是雷工!
通用数据访问类就是字面意思,即通用的访问数据库的方法。
关于通用数据访问类在前面有过记录《》;
这里对没有记录到的做些补充记录。
01 前言关于通用数据访问类在前面的框架搭建时已经创建了,接下来需要编写需要的相关方法;
关于数据访问的方法一般有以下几类:
①:普通的SQL语句;
②:带参数的SQL语句;
③:存储过程及一些辅助方法;
02 连接数据库为了让数据库的连接信息可修改,需要在UI部分添加配置文件App.config(有的话则不用添加,没有的话需要手动添加);
在App.config添加个节点
添加代码如下:
<connectionStrings><add name="connString" connectionString="Server=.;DataBase=LeiGongPMDB;Uid=sa;Pwd=admin@123"/</connectionStrings>为了让程序中调用相关信息需要先添加引用程序集:
然后在SQLHelper类中引入命名空间
using System.Configuration;接着添加如下代码,即可调用配置文件中数据库的连接信息:
//定义连接字符串public static readonly string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();03 主要方法①增删改方法
代码如下:
/// <summary>/// 执行增删改操作/// </summary>/// <param name="sql"></param>/// <returns></returns>/// <exception cref="Exception"></exception>public static int Update(string sql){ SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(sql, conn); try {conn.Open();return cmd.ExecuteNonQuery(); } catch (Exception ex) {throw new Exception("执行Update发生异常:" + ex.Message); } finally {conn.Close(); }}②执行单一结果查询
代码如下:
/// <summary>/// 执行单一结果查询/// </summary>/// <param name="sql"></param>/// <returns></returns>/// <exception cref="Exception"></exception>public static object GetSingleResult(string sql){ SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(sql, conn); try {conn.Open();return cmd.ExecuteScalar(); } catch (Exception ex) {throw new Exception("执行GetSingleResult发生异常:" + ex.Message); } finally {conn.Close(); }}③执行结果集查询
代码如下:
/// <summary>/// 执行一个结果集的查询/// </summary>/// <param name="sql">查询的SQL语句</param>/// <returns>返回一个SqlDataReader对象</returns>/// <exception cref="Exception"></exception>public static SqlDataReader GetReader(string sql){ SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(sql, conn); try {conn.Open();return cmd.ExecuteReader(CommandBehavior.CloseConnection); } catch (Exception ex) {if(conn.State==ConnectionState.Open){ conn.Close(); }throw new Exception("执行GetReader发生异常:" + ex.Message); }}④执行返回数据集查询
代码如下:
/// <summary>/// 执行返回数据集的查询/// </summary>/// <param name="sql"></param>/// <returns></returns>public static DataSet GetDataSet(string sql){ SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(sql, conn); //创建数据适配器对象 SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); try {conn.Open();da.Fill(ds);//使用数据适配器填充数据集return ds; } catch (Exception ex) {throw ex; } finally {conn.Close(); }}⑤获取服务器时间
代码如下:
/// <summary>/// 获取服务器的时间/// </summary>/// <returns></returns>public static DateTime GetServerTime(){ return Convert.ToDateTime(GetSingleResult("select getdate()"));}04 后记以上为通用数据访问类的相关内容,有记录不准确的地方欢迎评论指出,
更多相关内容可以在交流群内探讨;