C# DBHelper

C# DBHelper

步骤一
先在App.config里文件里添加这一行是连接字符串配置,用于指定连接到数据库所需的参数
请添加图片描述


代码如下:

<connectionStrings>
	<add name="Asset" connectionString="data source=LWKEY;initial catalog=asset;persist security info=True;user id=sa;password=123456;" />
</connectionStrings>

其中:

  • <connectionStrings>:这是一个 XML 元素,用于包含所有连接字符串的集合。
  • <add>:这是 <connectionStrings> 中的一个子元素,用于添加一个连接字符串
  • name="Asset":这是连接字符串的名称,可以在代码中使用该名称来引用该连接字符串。
  • connectionString="...":这是连接字符串的实际值,包含了连接到数据库所需的各种参数。在这里,它指定了以下参数
  • data source=LWKEY数据源,即要连接的数据库服务器的名称或 IP 地址。
  • initial catalog=asset要连接的数据库的名称。
  • persist security info=True:指定是否应将安全信息(例如用户名和密码)存储在连接字符串中。
  • user id=sa连接到数据库所需的用户名。
  • password=123456连接到数据库所需的密码。

总结:
根据上述连接字符串的配置,它将连接到名为 “Asset” 的数据库,使用 SQL Server 认证方式登录,用户名为 “sa”,密码为 “123456”。如果需要连接到其他数据库,只需要修改连接字符串中的 data sourceinitial catalog 参数即可。同时,如果需要使用 Windows 身份验证方式登录,可以将 user idpassword 参数删除,并将 persist security info 参数设置为 False


步骤二:
请添加图片描述

DAL类再创建一个DBHelper类,在DBHelper类中写:

1.在DBHelper类中首先给一个静态字符串变量,用来存储连接到数据库时需要的连接字符串信息。

//连接字符串
static string conn = ConfigurationManager.ConnectionStrings["Asset"].ToString();//读取配置文件

它使用了ConfigurationManager类,调用了其中的ConnectionStrings属性,并将属性值转换成字符串类型。这个属性的作用是读取应用程序配置文件中的数据库连接字符串信息,因为在实际开发中,我们通常会把数据库连接字符串信息放在应用程序配置文件中,以便于管理和维护。


一丶增删改

2.给一个静态方法,用于执行数据库的增删改操作。

/// <summary>
/// 增删改
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns>受影响的行数</returns>
public static int ExecuteNonQuery(string sql)
{
    //创建连接对象
    SqlConnection connection = new SqlConnection(conn);
    //打开链接
    connection.Open();
    //操作sql语句
    SqlCommand comman = new SqlCommand(sql,connection);
    int result=comman.ExecuteNonQuery();//受影响的行数
    //关闭链接
    connection.Close();
    return result;

}
  • 首先,代码中创建了一个SqlConnection对象,使用之前获取到的连接字符串conn来进行数据库连接。
  • 然后,通过调用Open()方法打开数据库连接。
  • 接下来,创建一个SqlCommand对象,传入参数sql,也就是要执行的SQL语句,同时将连接对象作为参数传递给SqlCommand对象。
  • 接着,调用ExecuteNonQuery()方法执行SQL语句,并将执行结果存储在result变量中,这个结果表示受影响的行数,也就是执行SQL语句后数据库中受到影响的行数,比如插入、更新、删除操作影响的行数。
  • 最后,通过调用Close()方法关闭数据库连接,并返回result作为方法的返回值。

这段代码的功能是执行给定的SQL语句并返回受影响的行数。


二丶查询

3.给一个静态方法,用于执行数据库的查询操作。

/// <summary>
/// 查询
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns></returns>
public static DataTable GetTable(string sql)
{
    //创建连接对象
    SqlConnection connection = new SqlConnection(conn);
    //打开链接
    connection.Open();
    //操作sql语句
    SqlCommand command = new SqlCommand(sql,connection);
    SqlDataAdapter adapter = new SqlDataAdapter(command);//数据适配器

    DataSet ds = new DataSet();//存入dataset中 相当于数据仓库
    adapter.Fill(ds);

    //关闭链接
    connection.Close();

    DataTable dt = ds.Tables[0];
    return dt;
}
  • 首先,创建一个SqlConnection对象,表示数据库连接,并使用给定的连接字符串conn进行初始化。
  • 然后,通过调用Open()方法打开数据库连接。
  • 接下来,创建一个SqlCommand对象,用于执行给定的SQL语句。传入的SQL语句是作为方法的参数sql传递进来的。
  • 使用SqlDataAdapter对象创建一个数据适配器adapter,将SqlCommand对象传递给它进行初始化。
  • 创建一个DataSet对象ds,用于存储查询结果集。
  • 调用适配器的Fill方法,将查询结果填充到DataSet中。
  • 关闭数据库连接,调用Close()方法关闭连接。
  • 最后,从DataSet中获取第一个表格Tables[0],将其转换为DataTable对象dt
  • 返回**DataTable对象dt,查询结果。

可以用于执行任意的查询SQL语句,并将结果以DataTable的形式返回。


三丶查询并判断是否有满足条件

4.用于执行查询并判断是否有满足条件的结果的方法

//dataReader读取数据(只用于判断是否有满足条件的结果)
public static bool GetDataReader(string sql)
{
    SqlConnection connection = new SqlConnection(conn);
    connection.Open();
    SqlCommand command = new SqlCommand(sql,connection);
    //datareader读取数据,逐行读取
    SqlDataReader dataReader = command.ExecuteReader();//逐行读取
    bool result = false;//执行成功还是失败的结果
    if (dataReader.Read())
    {
        //登录时只需要返回登录成功还是失败的结果
        result = true;
    }
    connection.Close();
    return result;
}
  • 首先,创建一个SqlConnection对象,表示数据库连接,并使用给定的连接字符串conn进行初始化。
  • 然后,通过调用Open()方法打开数据库连接。
  • 接下来,创建一个SqlCommand对象,用于执行给定的SQL语句。传入的SQL语句是作为方法的参数sql传递进来的。
  • 调用ExecuteReader()方法执行SQL语句,并将查询到的结果存储在SqlDataReader对象dataReader中。这里使用SqlDataReader逐行读取结果。
  • 创建一个布尔类型的变量result,用于表示执行成功还是失败的结果,默认为false
  • 使用Read()方法尝试读取第一行数据,如果读取成功,则表示有满足条件的结果存在,将result设置为true
  • 关闭数据库连接,调用Close()方法关闭连接。
  • 最后,返回result,即判断是否有满足条件的结果。

可以用于执行任意的查询SQL语句,并判断是否有满足条件的结果存在,返回值为bool类型。


以上就是举例几种常见的

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值