不管老方法还是新方法,老类还是新类,新架构还是老架构,融会贯通,温故总能知新!加油!
在项目中,是需要执行很多增删改查,如每执行一次都写一次调用方法的话,就会很多相同的代码。
想起之前看过的几篇关于DbHelperSQL类的博文,可以把一些经常用到的与数据库之间连接执行增删改查的方法汇总成一个类,每次执行相关操作只要调用该DbHelperSQL类中相应的方法就行了。
常用的一些无非就是:SQL语句的增删改、SQL语句带参/不带参查询后返回数据集、SQL带参数的存储过程、ExecuteScalar、ExecuteScalar 无参数…
下面就按照自己的理解分情况稍微整理一下,先从最简单的ExecuteNonQuery()开始吧。
1、我的环境
- Window10
- IIS 10.0
- Visual Studio 2019(asp.net用4.5的框架)
- SQL Server 2014 Management Studio
2、数据库准备
- 建一个简单的测试库SQLTEST
- 建一个测试的user_info表
3、程序准备
vs建一个asp.net web应用程序,命名sqldemo
①Web.config中添加数据库的连接字符串如下:
(百度一下,有很多不同的连接字符串语句的~)
<configuration>
......
<connectionStrings>
<add name="SQLTEST" connectionString="Data Source=.;Initial Catalog=SQLTEST;User ID=sa;Password=你的数据库sa用户密码" providerName="System.Data.SqlClient" />
</connectionStrings>
......
</configuration>
②添加一个数据库链接的基类,命名DBHelperSQL
- DBHelperSQL类中ExecuteSql方法的代码如下,分为:
- 传入的SQL不带参的ExecuteSql
- 传入的SQL带参的ExecuteSql_parm
(第一个所以注释会比较多,后面基本大同小异了,注释就会少~)
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Xml;
using System.Collections;
using System.Configuration;
namespace sqldemo.Models
{
public class DBHelperSQL
{
/// <summary>
/// web.config中配置的name=SQLTEST连接字符串
/// </summary>
private static readonly string connstr = ConfigurationManager.ConnectionStrings["SQLTEST"].