C

雅轩聊科技 2024-07-18 06:00:46

哈喽,你好啊,我是雷工!

通用数据访问类就是字面意思,即通用的访问数据库的方法。

关于通用数据访问类在前面有过记录《》;

这里对没有记录到的做些补充记录。

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 后记

以上为通用数据访问类的相关内容,有记录不准确的地方欢迎评论指出,

更多相关内容可以在交流群内探讨;

0 阅读:0

雅轩聊科技

简介:感谢大家的关注