C#操作Access数据库
声明:本文内容主要参考了百度文库某位网友的文章,具体地址找不到了,在此对原作者表示感谢!
对于数据库操作,有简单有复杂。如果不考虑性能和通用性,可以写得很简单。但如果面对的数据库数据量比较庞大,或面对的数据库类型不一,就不得不考虑数据库操作类的性能和通用性,此时的数据库操作就比较复杂。本文是关于Access数据库的C#操作,不打算也没有能力事无巨细地讨论所有关于数据库操作的细节,所以,以下通过一些具体代码来演示对Access的最基本的操作:SELECT、UPDATE、DELETE、INSERT。
要想操作一个数据库,不论是那种操作,首先要做的肯定是打开数据库。下面我们就针对Access数据库,说明如何打开一个数据库连接。在这里,我们需要用到的是System.Data.OleDb.OleDbConnection类。(如果操作SQL数据库,我们最好使用System.Data.SqlClient.SqlConnection类)
代码:
1 using System.Data; 2 using System.Data.OleDb; 3 4 public OleDbConnection CreatConn() 5 { 6 string connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\Workspace\\Test.accdb"; // 如果是Access 2007以前的版本,则驱动Provider为Provider=Microsoft.Jet.OLEDB.4.0; 7 OleDbConnection conn = new OleDbConnection(connString); // 创建数据库链接 8 return conn; 9 }
上例中,我们先定义一个string类型的变量connString用来存放数据库的连接字符串,然后再定义一个System.Data.OleDb.OleDbConnection类型的对象并实例化,最后返回这个对象。需要说明的是,我们并没有把语句conn.Open();放到这个函数中,原因稍后说明,这里只是先提醒一下。
通过以上函数CreatConn(),我们得到了类似于ADO中的连接对象Connection,下面就是具体的数据库操作了。
在具体讲操作前,有必要先认识一下下面这两个类:
System.Data.OleDb.OleDbDataAdapter
System.Data.OleDb.OleDbDataReader
- System.Data.OleDb.OleDbDataAdapter 可以直接和DataSet联系,该数据集可用于查询和更新数据源。它的功能相对强大一些,因此也比较耗系统资源
- System.Data.OleDb.OleDbDataReader 则有些类似于ADO中的那个只读向前的记录集,它最常用在只需要依次读取并显示数据的时候,相比System.Data.OleDb.OleDbDataAdapter来说,他耗用的系统资源要小。其实,OleDbDataReader能实现的功能,OleDbDataAdapter都可以实现,不过从资源使用率的角度考虑我们应该尽量使用前者,但有些功能,却是必须使用OleDbDataAdapter才可以实现的
1、SELECT操作