欢迎访问宙启技术站
智能推送

C# 中操作Access数据库显示数据

发布时间:2023-05-18 17:19:07

在 C# 编程语言中,操作 Access 数据库是一项普遍的任务。Access 是 Microsoft Office 套件中的一种关系型数据库管理系统,可以用来存储和处理大量的数据。本文将介绍如何在 C# 中连接到 Access 数据库并显示数据。

连接到 Access 数据库

在 C# 中连接到 Access 数据库需要使用 ADO.NET 提供的类。首先需要在代码中引用命名空间 System.Data.OleDb,该命名空间包含用于连接和操作 Access 数据库的类和方法。

connectionString 是连接数据库的字符串,其中包括数据库的路径和名称、用户名、密码等信息。在本文中,我们将使用以下连接字符串:

string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Data\\Northwind.accdb;Persist Security Info=False;";

上述连接字符串使用了 Microsoft.ACE.OLEDB.12.0 提供程序,该提供程序适用于 Access 2007 和以上版本的数据库。如果使用的是旧版本的 Access,可能需要使用不同的提供程序。

创建 OleDbConnection 对象

在连接到数据库之前,需要创建一个 OleDbConnection 对象。OleDbConnection 类是用于连接到 Access 数据库的主要类,它提供了许多方法和属性,用于打开、关闭、查询数据库等。

代码示例:

OleDbConnection connection = new OleDbConnection();

connection.ConnectionString = connectionString;

打开连接

打开 OleDbConnection 对象时,需要使用 Open 方法。如果连接成功,OleDbConnection 对象的状态将变为打开。

代码示例:

connection.Open();

查询数据

连接到数据库并打开连接后,可以使用 SQL 查询语句从数据库中检索数据。以下代码使用 Select 语句从 Products 表中选择所有行:

string queryString = "SELECT * FROM Products";

OleDbCommand command = new OleDbCommand(queryString, connection);

执行查询

使用 ExecuteReader 方法执行查询,并返回一个 OleDbDataReader 对象。OleDbDataReader 类是用于以只读方式处理查询结果的主要类。执行查询之后,应使用 OleDbDataReader.Read 方法迭代查询结果,并使用 OleDbDataReader.GetValue 方法访问每行中的每个单元格。

代码示例:

OleDbDataReader reader = command.ExecuteReader();

while (reader.Read())

{

    Console.WriteLine("{0}\t{1}\t{2}\t{3}", 

        reader.GetValue(0), reader.GetValue(1), reader.GetValue(2), reader.GetValue(3));

}

关闭连接

使用完数据库连接后,需要关闭连接。在 C# 中,可以使用 Close 方法或者 Dispose 方法关闭连接。

代码示例:

connection.Close();

// 或者

connection.Dispose();

完整示例

以下是完整的 C# 示例代码,用于连接到 Access 数据库并显示数据:

using System;

using System.Data.OleDb;

class Program

{

    static void Main(string[] args)

    {

        string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Data\\Northwind.accdb;Persist Security Info=False;";

        OleDbConnection connection = new OleDbConnection();

        connection.ConnectionString = connectionString;

        connection.Open();

        string queryString = "SELECT * FROM Products";

        OleDbCommand command = new OleDbCommand(queryString, connection);

        OleDbDataReader reader = command.ExecuteReader();

        while (reader.Read())

        {

            Console.WriteLine("{0}\t{1}\t{2}\t{3}",

                reader.GetValue(0), reader.GetValue(1), reader.GetValue(2), reader.GetValue(3));

        }

        connection.Close();

    }

}

总结

在 C# 中操作 Access 数据库需要使用 ADO.NET 提供的类和方法。要连接到 Access 数据库,需要创建一个 OleDbConnection 对象,并使用 Open 方法打开连接。通过使用 SQL 查询语句,可以从数据库中选择和检索数据。最后,使用 Close 或者 Dispose 方法关闭连接。