C#数据库连接与增删改查操作详解

需积分: 3 1 下载量 171 浏览量 更新于2024-10-27 收藏 74KB DOC 举报
在C#中,与数据库进行交互是应用程序开发中的关键部分,特别是涉及到数据的增删改查操作。本文档将着重介绍如何在C#中使用ADO.NET进行数据库连接,并通过DataSet和DataAdapter来实现这些操作。 首先,我们来看如何查询数据库中是否存在特定数据。步骤如下: 1. 创建SqlConnection对象:使用`System.Data.SqlClient`命名空间中的`SqlConnection`类,通过连接字符串与数据库建立连接。例如,在`DBHelper.cs`中,定义了一个静态连接字符串变量,用于存储数据库的信息,如服务器地址、数据库名等。 ```csharp public static string connectionString = "Data Source=MASTER;InitialCatalog=MySchool;IntegratedSecurity=True"; public static SqlConnection connection = new SqlConnection(connectionString); ``` 2. 构造SQL查询:根据用户输入构建SQL查询语句,例如查询`Admin`表中登录名和密码匹配的数据。这里使用`string.Format()`方法动态构造SQL,根据`txtLoginUser.Text`和`txtLogiPwd.Text`的值。 3. 打开数据库连接并执行查询:调用`SqlConnection.Open()`打开连接,然后使用`SqlCommand`对象执行查询,`ExecuteScalar()`方法返回的是单个值,如整数或浮点数。 ```csharp string sql = string.Format("select count(*) from Admin where LoginId='{0}' and LoginPwd='{1}'", txtLoginUser.Text, txtLogiPwd.Text); SqlCommand command = new SqlCommand(sql, DBHelper.conn); command.ExecuteNonQuery(); // 改为command.ExecuteScalar() ``` 4. 分析查询结果:根据`ExecuteScalar()`方法返回的结果判断数据是否存在。如果返回值小于1,说明不存在,显示错误信息并清空输入框;否则,显示成功信息。 对于数据库的非查询操作(即增删改操作),流程类似但略有不同: 1. 连接数据库:同样使用`SqlConnection`对象和连接字符串。 2. 创建SqlCommand对象:构建对应的非查询SQL语句,如`INSERT`, `UPDATE`, 或 `DELETE`。 3. 执行NonQuery()方法:而非查询操作需要使用`ExecuteNonQuery()`方法,它返回的是受影响的行数,而不是单个值。 4. 判断执行结果:根据`ExecuteNonQuery()`返回的值判断操作是否成功。比如,插入一条新记录后,如果返回值为1,表示插入成功。 C#中与数据库交互涉及数据库连接的管理、SQL语句的构造、以及执行方法的选择(`ExecuteScalar()` vs `ExecuteNonQuery()`)。理解这些基础操作是进行高效数据库操作的关键,尤其是在处理大量数据或复杂的业务逻辑时。同时,别忘了处理可能的异常和关闭数据库连接以保持良好的编程实践。