### 北大青鸟S1《使用C#语言开发数据库应用系统》操作数据库知识点总结
#### 一、查询操作
**1. 查询单个值**
当需要从数据库中获取单个值时,可以使用`Command`对象的`ExecuteScalar()`方法来实现。以下是具体的操作步骤:
- **创建Connection对象**:首先需要建立与数据库的连接,这通常通过创建一个`Connection`对象来完成。例如,在使用SQL Server时,可以创建一个`SqlConnection`对象。
- **创建SQL语句**:编写用于查询单个值的SQL语句。例如:`SELECT COUNT(*) FROM 表名;`。
- **创建Command对象**:使用创建好的SQL语句和`Connection`对象创建一个`SqlCommand`对象。
- **打开数据库连接**:调用`Connection`对象的`Open()`方法来打开数据库连接。
- **执行查询**:调用`Command`对象的`ExecuteScalar()`方法执行查询,并将结果存储在一个变量中。此方法返回一个标量值,即单个值。
- **关闭数据库连接**:操作完成后,务必调用`Connection`对象的`Close()`方法关闭数据库连接。
**2. 查询若干条记录**
当需要从数据库中获取多条记录时,可以使用`Command`对象的`ExecuteReader()`方法。下面是具体的步骤:
- **创建Connection对象**:同样地,首先需要创建一个`Connection`对象来建立与数据库的连接。
- **创建SQL语句**:编写用于查询多条记录的SQL语句,如:`SELECT * FROM 表名 WHERE 条件;`。
- **创建Command对象**:使用创建好的SQL语句和`Connection`对象创建一个`SqlCommand`对象。
- **打开数据库连接**:调用`Connection`对象的`Open()`方法来打开数据库连接。
- **执行查询**:调用`Command`对象的`ExecuteReader()`方法执行查询,并返回一个`SqlDataReader`对象。
- **读取记录**:通过调用`SqlDataReader`对象的`Read()`方法逐行读取记录,如果读到记录则返回`true`,否则返回`false`。
- **处理数据**:使用`type(dataReader[列名或索引])`的方式读取每一行中某一列的值。
- **关闭DataReader对象**:使用完后,记得调用`SqlDataReader`对象的`Close()`方法来释放资源。
- **关闭数据库连接**:调用`Connection`对象的`Close()`方法关闭数据库连接。
#### 二、非查询操作
对于需要执行插入、更新或删除等非查询操作的情况,可以使用`Command`对象的`ExecuteNonQuery()`方法。下面是具体的步骤:
- **创建Connection对象**:创建一个`Connection`对象来建立与数据库的连接。
- **创建SQL语句**:编写用于增删改的SQL语句,如:`INSERT INTO 表名 (字段列表) VALUES (值列表);`。
- **创建Command对象**:使用创建好的SQL语句和`Connection`对象创建一个`SqlCommand`对象。
- **打开数据库连接**:调用`Connection`对象的`Open()`方法来打开数据库连接。
- **执行操作**:调用`Command`对象的`ExecuteNonQuery()`方法执行SQL命令,并返回受影响的行数。
- **关闭数据库连接**:操作完成后,务必调用`Connection`对象的`Close()`方法关闭数据库连接。
通过以上步骤,我们可以有效地利用C#语言进行数据库的操作,无论是简单的查询还是复杂的增删改操作。这些基础的知识点对于初学者来说至关重要,能够帮助他们快速上手并熟练掌握数据库开发的基本技能。