21.2 使用数据库连接
为了访问数据库,需要提供某种类型的连接参数,例如运行数据库的机器,和登录凭证。使用ADO的用户会很快熟悉.NET连接类OleDbConnection和SqlConnection,图21-1显示了连接类及它们支持的接口。
在本章的示例中,使用Northwind数据库,它是和.NET Framework SDK示例一起安装的。下面的代码段说明了如何创建、打开和关闭Northwind数据库的连接。
using System.Data.SqlClient;
string source = "server=(local)\\NetSDK;" +
"integrated security=SSPI;" +
"database=Northwind";
SqlConnection conn = new SqlConnection(source);
conn.Open();
// Do something useful
conn.Close();

图 21-1
如果以前使用过ADO或OLE DB,就会很熟悉连接字符串。如果使用的是OleDb提供程序,就应能剪切和粘贴旧代码。在该示例的连接字符串中,使用的参数如下所示。连接字符串中的参数用分号分隔开。
● server=(local)\\NetSDK:表示要连接的数据库服务器。SQL Server允许在同一台机器上运行多个不同的数据库服务器进程,所以这里在本地机器上连接NetSDK进程。
● integrated security=SSPI:这个参数使用Windows Authentication连接数据库,最好在源代码中使用这个参数,而不是用户名和密码。
● database=Northwind:这描述了要连接的数据库实例。每个SQL Server进程都可以有几个数据库实例。
这个示例使用定义的连接字符串打开数据库连接,再关闭该连接。连接打开后,就可以对数据源执行命令,完成后,就可以关闭连接。
SQL Server有另一个模式的身份验证。它可以使用Windows集成的安全性,这样在登录时提供的证书就会传送给SQL Server。这适合于删除连接字符串的uid 和 pwd部分,并添加Integrated Security=SSPI。
在本章的下载代码中,有一个文件Login.cs简化了本章的示例。它链接了所有的示例代码,包括用于这些示例的数据库连接信息;可以修改该文件,使用自己的服务器名称、用户和密码。在默认情况下,该文件使用Windows集成的安全性,但是可以根据需要修改用户名和密码。
下一小节介绍使用ADO.NET的一些好方法。





