Visual C# 访问不同的数据库

Visual C#作是微软极力推荐的下一代程序开发语言,他有一个非常重要伴侣--.Net Framework SDK,在他的里面封装了许多Class Library (类库)。Visual C#要实现很多拓展功能,就必须借助于他的这个伴侣。在Visual C#中对数据库的处理是其功能的一个重要表现。Visual C#在进行数据库处理的时候,经常用到.Net FrameWork SDK中的一个名称空间 是 System.Data.Oledb。在这个名称空间中封装了许多和数据库处理的相关Class(类)。本文就是通过二个具体的实例来说明在Visual C#如何实现对数据库的访问。

   一.程序设计和运行环境是:

   微软公司视窗2000 专业版,.Net FrameWork SDK BETA 2 ,Microsoft Access Data Component 2.6 ( MADC2.6 )

   二. 程序主要作用

   本文中主要有二个源代码,其一说明如何在Visual C#中对访问数据库,本地数据库选择的是微软公司的Acess 2000;其二说明如何在Visual C#中对访问数据库,远程数据库选择的是微软公司的产品--SQL Server 7.0。

   三.例子设计过程中的思路

   (1).首先要导入名称空间

   (2).建立指向数据库的数据连接

   (3).在此数据连接上,建立一个SQL语句,用来返回所需用的数据集

   (4).打开数据连接,执行SQL语句,返回所需的数据集

   (5).关闭数据集,关闭数据连接

   四.第一个例子first.cs -- 打开本地数据库(my.mdb )

   程序中的重要步骤:

   (1).导入名称空间空间

   在本例子中要导入三个名称空间,分别是:System、System.Data.OleDb、System.Windows.Forms。导入System名称空间是因为程序中用到其中的Console类。导入System.Windows.Forms名称空间是因为程序中用到其中的Application类。

   (2).建立指向数据库的连接

   建立连接要用到System.Data.OleDb名称空间中的类--OleDbConnection。通过以下语句可以完成对本地数据库的连接工作:

string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
           Application.StartupPath + "//my.mdb" ;
OleDbConnection aConnection = new OleDbConnection ( strConnect ) ;
   其中第一句中的"Provider"是表明数据库引擎的类型。"Data Source"是指向的数据库名称。

   (3).在此数据连接上,建立一个SQL语句,用来返回所需用的数据集

   建立SQL语句来得到数据集,要用到System.Data.OleDb名称空间中的类--OleDbCommand。通过以下语句可完成此项工作。

OleDbConnection aConnection = new OleDbConnection ( strConnect ) ;
   (4). 打开数据连接,执行SQL语句,返回所需的数据集

   要完成此项操作,需用到OleDbConnection类中的Open方法,和OleDbCommand类中的ExecuteReader方法。返回的数据集要用的System.Data.OleDb名称空间中的另一个类--OleDbDataReader。这个类就像是一个容器,提供要访问的数据集。主要语句如下:

aConnection.Open ( ) ;
OleDbDataReader aReader = aCommand.ExecuteReader ( ) ;
   (5).关闭数据集,关闭数据连接

   要关闭数据集要用到OleDbDataReader类中的Close方法,要关闭数据连接要用到OleDbConnection类中的Close方法。注意,最好先关闭返回的数据集,再关闭指向数据库的连接。具体程序如下:

aReader.Close ( ) ;
aConnection.Close ( ) ;
   (6).在程序中,还设计了一个例外处理。在出现例外的时候,显示错误信息。错误信息的捕获是通过System.Data.OleDb名称空间中的类--OleDbException来实现的。具体如下:

try
{
  …….
  }
catch ( OleDbException e )
{
  Console.WriteLine ( "错误类型:", e.Errors[0].Message ) ;
}
first.cs 的程序源代码如下:
using System ;
using System.Data.OleDb ;
using System.Windows.Forms ;
// 导入程序中用的的所有名称空间
class OleDbTest {
public static void Main ( )
{
  string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
             Application.StartupPath + "//my.mdb" ;
  OleDbConnection aConnection = new OleDbConnection ( strConnect ) ;
  // 建立指向数据库的连接
  OleDbCommand aCommand = new OleDbCommand ( "select * from Persons" ,  
                       aConnection ) ;
  // 设计所需要返回的数据集的内容
  try {
   aConnection.Open ( ) ;
   // 打开指向数据库连接
   OleDbDataReader aReader = aCommand.ExecuteReader ( ) ;
   // 返回需要的数据集内容
   Console.WriteLine ( "以下就是打开后的数据集的一个字段的所有内容!" ) ;
   while ( aReader.Read ( ) ) {
    Console.WriteLine ( aReader.GetString (0) ) ;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值