首页 » 网站推广 » sqlhelperclassphp技巧_C常识通用数据访问类SQLHelper的编写

sqlhelperclassphp技巧_C常识通用数据访问类SQLHelper的编写

访客 2024-12-13 0

扫一扫用手机浏览

文章目录 [+]

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

前面学习了C#操作SQLServer数据库数据的增编削查,

sqlhelperclassphp技巧_C常识通用数据访问类SQLHelper的编写

《C#知识|通过ADO.NET实现运用程序对数据库的增、删、改操作。

sqlhelperclassphp技巧_C常识通用数据访问类SQLHelper的编写
(图片来自网络侵删)

个中实现的过程中有很多代码是重复的,此时作为高阶程序员为了使代码更优雅,避免重复,

从而要考虑代码的复用技能,针对此案例中代码重复情形,结合项目中对数据库的操作还是挺普遍的,

为了便于其他项目也能够复用该方法,可以将数据访问写成一个通用的类。

01 新建类

新添加一个类,命名为SQLHelper.cs

02 添加引用

为了使数据库信息可配置,而不是写去世的,可以在App.config内写干系信息,

通过该办法实现自由配置,须要先添加引用

找到System.Configuration,然后点击【确定】按钮。

然后在新建的类中引入命名空间

using System.Configuration;03 App.config

创建任何项目都会有一个App.config

在App.config添加个节点

添加代码如下:

<connectionStrings><add name="connString" connectionString="Server=.;DataBase=LGAccountManagentDB;Uid=sa;Pwd=admin@123"/></connectionStrings>

个中标红部分为复制的数据库干系信息。

添加位置如下:

然后在新建的SQLHelper类中添加如下代码,即可调用App.config中的数据库信息。

private static string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();04 封装类

总结:封装变革的,抽取不变的,变革的作为参数,不变的作为方法体!

封装完的增编削类代码为:

//同样引用如下命名空间using System.Data;using System.Data.SqlClient;using System.Configuration;namespace LeiGongNotes2{/// <summary>/// 通用数据访问类/// </summary>public class SQLHelper{//private static string connString = "Server=.;DataBase=LGAccountManagentDB;Uid=sa;Pwd=admin@123";private static string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();/// <summary>/// 实行增编削操作的方法/// </summary>/// <param name="sql"></param>/// <returns></returns>public static int Update(string sql){//[1]、创建数据库连接工具SqlConnection conn = new SqlConnection(connString);//[2]、创建Command工具SqlCommand cmd = new SqlCommand(sql, conn);//[3]、打开数据库连接conn.Open();//[4]、实行操作(下面的方法,只能用于实行insert、update、delete操作,不能实行delect操作)int result = cmd.ExecuteNonQuery();//[5]、关闭连接conn.Close();return result;}}}05 用访问类访问数据库

5.1、首先在Program.cs中写个方法并调用

using System;namespace LeiGongNotes2{internal class Program{static void Main(string[] args){Console.WriteLine("欢迎大家关注【雷工条记】!
");Console.WriteLine("--------------------------");ExecuteInsertByHelper();Console.ReadLine();}static void ExecuteInsertByHelper(){//定义SQL语句string sql = "insert into Account(AccountName,AccountContent,originality,TypeId)";sql += " values('雷工条记1','分享数据库知识|C#知识|上位机知识|组态软件|触摸屏|数字孪生|人生感悟',206,12),";sql += "('小李食代1','分享家常菜|减脂餐|事情便当|营养餐|等康健食谱',199,11)";int result = SQLHelper.Update(sql);Console.WriteLine(result);}}}

5.2、实行结果:

解释成功将SQL语句的两条数据插入到了数据库,

06 优化数据访问类

实际开拓中,数据访问可能会产生非常,常日须要在代码中加入try{}catch{},

当运行非常时会抛出非常信息。

优化后代码如下:

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){//此处可以捕获ex工具干系信息,然后保存到日志文件中throw new Exception("实行Update发生非常:" + ex.Message);}finally //此处为无论是否发生非常都要实行的代码{conn.Close();}}07 后记

以上为对增编削方法的精简,精简后的代码封装了重复部分,让代码整体简洁优雅了很多。

接下来连续学习对查询两个方法的封装。

有在学习同样内容的同学可以点赞+关注+在看,一起学习进步。

相关文章

介绍打爆劫的秘密,步骤与方法介绍

在《英雄联盟》这款全球知名的MOBA游戏中,劫作为一位刺客英雄,以其灵活的操作和强大的爆发能力,一直是众多玩家的心头好。要想在游戏...

网站推广 2024-12-15 阅读0 评论0