在VisualC#中访问不同数据库(4)

在VisualC#中访问不同数据库(4)


Author: 马金虎  &;nbspFrom:Internet


                五.第二个例子--访问远程数据库Sql server 7.0
 
    访问Sql server 7.0的程序代码和访问Acess 2000的程序代码的主要区别有二点:
 
    1. 选用的数据库引擎不一样。访问Sql server 7.0的指向数据库的连接要用以下语句:
 
  string strConnect = " Provider=SQLOLEDB.1 ; Persist Security Info=False ; User ID = sa ; Initial Catalog=xsgl ; Data Source = czdy1 " ;
 
    其中"Initial Catalog"是要选用的数据库名称。"Data Source"是提供数据库服务的服务器名称。
 
    2. 不要在导入System..Windows.Forms名称空间
 
    这是因为访问的是远程数据库,不需要用到Application类了。
 
    访问远程数据库的程序源代码--second.cs
 
  using System ;
  using System.Data.OleDb ;
  // 导入程序中用的的所有名称空间
  class OleDbTest {
  public static void Main ( )
  {
   string strConnect = " Provider=SQLOLEDB.1 ; Persist Security Info=False
        ; User ID = sa ; Initial Catalog=xsgl ; Data Source = czdy1 " ;
   OleDbConnection aConnection = new OleDbConnection ( strConnect ) ;
   // 建立指向数据库的连接
   OleDbCommand aCommand = new OleDbCommand ( "select * from xsk" ,
               aConnection ) ;
   // 设计所需要返回的数据集的内容
   try {
    aConnection.Open ( ) ;
    // 打开指向数据库连接
    OleDbDataReader aReader = aCommand.ExecuteReader ( ) ;
    // 返回需要的数据集内容
    Console.WriteLine ( "以下就是打开后的数据集的一个字段的所有内容!" ) ;
    while ( aReader.Read ( ) ) {
     Console.WriteLine ( aReader.GetString (0) ) ;
    }
   // 屏幕输出数据集的第一个字段的所有内容,如果要第二个字段把"0"改为"1"
   aReader.Close ( ) ;
   // 关闭数据集
   aConnection.Close ( ) ;
   // 关闭指向数据库的连接
   }
   catch ( OleDbException e )
   {
    Console.WriteLine ( "错误类型:", e.Errors[0].Message ) ;
    file://如果出错,输出错误信息
   }
  }
  }
 
    六.总结
 
    上面的二个例子表明,访问远程数据库和访问本地数据库在原理上都是一样的,主要的区别在于打开数据库所需要的数据引擎,在程序设计中表现为打开指向数据库的连接所需设定的引擎参数的不一样。通过上面的二个例子,我想要再访问其他类型的数据库,就显得不是那么困难了。
 
    (2005-8-20:04:09)
 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 警告:持续变种木马正在发起农历新年攻势!
 您可能对 [C#] 的这些文章也感兴趣:
C# 3.0中的分部方法
.net程序员的盲点(一):参数修饰符ref,out ,params的区别
.net程序员的盲点(二):两个“属性”引起的歧异
使用VBA.NET压缩备份C#工程
C#处理数码相片之马赛克的实现
如何把图片插入Excel的一个单元格中
c#写的五子棋程序
如何杀死Word,Excel等进程?
HttpClient, 使用C#操作Web
C#精髓集合(1)
C#精髓集合(2)
C#精髓集合(3)