使用SqlConnection对象连接SQL Server数据库
我们可以用SqlConnection()构造函数生成一个新的SqlConnection对象。这个函数是重载的,即我们可以调用构造函数的不同版本。SqlConnection()的构造函数如下表所示:
| 构造函数 | 说明 |
| SqlConnection () | 初始化 SqlConnection 类的新实例。 |
| SqlConnection (String) | 如果给定包含连接字符串的字符串,则初始化 SqlConnection 类的新实例。 |
假设我们导入了System.Data.SqlClient命名空间,则可以用下列语句生成新的SqlConnection对象:
| SqlConnection mySqlConnection = new SqlConnection(); |
程序代码说明:在上述语法范例的程序代码中,我们通过使用“new“关键字生成了一个新的SqlConnection对象,并且将其命名为mySqlConnection。
现在我们就可以使用如下两种方式连接数据库,即采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录。
集成的Windows身份验证语法范例
| string connectionString="server=localhost;database=Northwind; integrated security=SSPI"; |
程序代码说明:在上述语法范例的程序代码中,我们设置了一个针对Sql Server数据库的连接字符串。其中server表示运行Sql Server的计算机名,由于在本书中,ASP.NET程序和数据库系统是位于同一台计算机的,所以我们可以用localhost取代当前的计算机名。database表示所使用的数据库名,这里设置为Sql Server自带的一个示例数据库--Northwind。由于我们希望采用集成的Windows验证方式,所以设置 integrated security为SSPI即可。
Sql Server 2005中的Windows身份验证模式如下:

注意:在使用集成的Windows验证方式时,并不需要我们输入用户名和口令,而是把登录Windows时输入的用户名和口令传递到Sql Server。然后Sql Server检查用户清单,检查其是否具有访问数据库的权限。而且数据库连接字符串是不区分大小写的。
采用Sql Server身份验证的语法范例
| string connectionString = "server=localhost;database=Northwind;uid=sa;pwd=sa"; |
程序代码说明:在上述语法范例的程序代码中,采用了使用已知的用户名和密码验证进行数据库的登录。uid为指定的数据库用户名,pwd为指定的用户口令。为了安全起见,一般不要在代码中包括用户名和口令,你可以采用前面的集成的Windows验证方式或者对Web.Config文件中的连接字符串加密的方式提高程序的安全性。
Sql Server 2005中的Sql Server身份验证模式如下:

如果你使用其他的数据提供者的话,所产生的连接字符串也具有相类似的形式。例如我们希望以OLE DB的方式连接到一个Oracle数据库,其连接字符串如下:
| string connectionString = "data source=localhost;initial catalog=Sales; use id=sa;password=;provider=MSDAORA"; |
程序代码说明:在上述语法范例的程序代码中,通过专门针对Oracle数据库的OLE DB提供程序,实现数据库的连接。data source 表示运行Oracle数据库的计算机名,initial catalog表示所使用的数据库名。provider表示使用的OLE DB提供程序为MSDAORA。
Access数据库的连接字符串的形式如下:
| string connectionString = "provider=Microsoft.Jet.OLEDB.4.0; @”data source=c:\DataSource\Northwind.mdb”; |
程序代码说明:在上述语法范例的程序代码中,通过专门针对Access数据库的OLE DB提供程序,实现数据库的连接。这使用的的OLE DB提供程序为Microsoft.Jet.OLEDB.4.0,并且数据库存放在c:\DataSource目录下,其数据库文件为Northwind.mdb。
现在我们就可以将数据库连接字符串传人SqlConnection()构造函数,例如:
| string connectionString = "server=localhost;database=Northwind;uid=sa;pwd=sa"; SqlConnection mySqlConnection = new SqlConnection(connectionString); |
或者写成
| SqlConnection mySqlConnection =new SqlConnection( "server=localhost;database=Northwind;uid=sa;pwd=sa"); |
在前面的范例中,通过使用“new“关键字生成了一个新的SqlConnection对象。因此我们也可以设置该对象的ConnectionString属性,为其指定一个数据库连接字符串。这和将数据库连接字符串传人SqlConnection()构造函数的功能是一样的。
| SqlConnection mySqlConnection = new SqlConnection(); mySqlConnection.ConnectionString = "server=localhost;database=Northwind;uid=sa;pwd=sa"; |
注意:只能在关闭Connection对象时设置ConnectionString属性。文章地址: http://www.qqread.com/aspdotnet/n202254.html
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- SQL Server 数据处理专题 (1859篇文章)
- SQL Server 索引和查询专题 (3328篇文章)
- SQL Server (1816篇文章)
- 数据库专栏 (5169篇文章)
- 数据库处理专题 (8708篇文章)
- 城域网专题 (7840篇文章)
- 数据库安全技术专题 (13188篇文章)
- 数据库安装与卸载 (10561篇文章)
- .NET移动与嵌入式技术 (5974篇文章)
- .NET开发手册 (5673篇文章)
- Out Of Memory的分析及诊断方法 (0次浏览)
- 未释放事件Handler可能导致内存泄漏 (0次浏览)
- 小心使用放在App_Code中类的静态成员 (0次浏览)
- ASP.net服务器控件的优化选择 (0次浏览)
- Asp.Net中动态页面转静态页面 (0次浏览)
- 正则表达式中的实用命名组替换 (0次浏览)
- Domain Model的三种类型及其级别 (0次浏览)
- 应用WEB标准会使ScrollTop属性失效! (0次浏览)
- Cache用法之缓存页面和缓存数据 (0次浏览)
- 支持正则表达式的UrlMapping (0次浏览)



