进水笼头——建立Connection
Connection表示与数据源之间的连接。可根据Connection对象的各种不同属性来指定数据源的类型、位置及其他属性,可用它来与数据库建立连接或断开连接。其他对象如DataAdapter和Command对象通过它与数据库通信。根据.NET Framework 数据提供程序的不同,也有几种不同的Connection,如针对SQL Server的SqlConnection、针对Oracle的OracleConnection、针对MySQL的MySqlConnection、针对OLEDB的OleDbConnection等。(本节代码示例位置:光盘\code\ch05\01)
1.用SqlConnection连接SQL Server
(1)加入命名空间:
(1)加入命名空间:
using System.Data.SqlClient;
(2)连接数据库:
string conString = "data source=127.0.0.1;Database=codematic;user id=sa;password=";
SqlConnection myConnection = new SqlConnection(conString);
myConnection.Open();

2.用OracleConnection连接Oracle

首先添加OracleClient的引用,如图5-5所示。
添加OracleClient的引用
(1)加入命名空间:
using System.Data.OracleClient;
(2)连接数据库:
string conString = "Data Source=codematic;User ID=codeuser;Password=user123";
OracleConnection myConnection = new OracleConnection(conString);
myConnection.Open();
3.用MySqlConnection连接MySQL
在.NET中连接MySQL数据库有两种方法:MySQL Connector/ODBC 和 MySQL Connector/NET,ODBC连接器是符合ODBC标准的交互平台,是.NET访问MySQL数据库的最好的选择。
首先,我们下载安装MySql-connector-net-5.1.5.Data.msi这个组件。如果是默认安装,则可以在C:\Program Files\MySQL\MySQL Connector Net 5.1.5\Binaries\.NET 2.0(这里安装的是MySQL Connector/Net 5.1.5,老的1.1版本是:C:\Program Files\MySQL\MySQL Connector Net 1.0.4\bin\.NET 1.1\)中找到MySql.Data.dll,将该文件复制到项目的bin目录下。
然后在项目引用中添加MySql.Data.dll的引用,如图5-6所示。
添加MySql.Data.dll的引用
图5-6  添加MySql.Data.dll的引用
实现代码如下。
(1)加入命名空间:
using MySql.Data.MySqlClient;
(2)连接数据库:
string conString = "server=127.0.0.1;database=mysql;user id=root;password=123";
MySqlConnection myConnection = new MySqlConnection(conString);
myConnection.Open();

4.用OleDbConnection连接各种数据源

由于数据源不同,相应的连接字符串也会不同。
(1)加入命名空间:
using System.Data.OleDb;
(2)连接SQL Server:
string conString = " Provider=SQLOLEDB.1;Persist Security Info=False;
        User ID=sa;Database=Codematic;Data Source=COMPUTER";
OleDbConnection myConnection = new OleDbConnection(conString);
myConnection.Open();
(3)连接Access(可通过建立.udl文件来获得字符串):
string conString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source
=C:\\Database1.mdb;Persist Security Info=False";
(4)连接Oracle(也可通过OracleConnection连接):
string conString = "Provider=MSDAORA.1;User ID=user; Password=123;
Data Source=db;Persist Security Info=False";
从以上几个对象实例对比来看,几个.NET数据提供程序组件模型的基本编程模式相同,只是组件对象的前缀有所区别,正是这种统一编程模型,让我们在做不同类型数据库开发时,变得非常简单。
 
《亮剑.NET: