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 source
和 initial catalog
参数即可。同时,如果需要使用 Windows 身份验证方式登录,可以将 user id
和 password
参数删除,并将 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类型。
以上就是举例几种常见的