常用connectionStrings配置:
<connectionStrings>
<add
name="LocalSqlServer"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient"
/>
<add name="dbAccess" providerName="access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Nwind.mdb"/>
<add name="dbdefault" providerName="access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|datadirectory|\db.mdb;" />
</connectionStrings>
连接字符串设置通常格式如下:
<add name="自定义连接字符串名称" connectionString="Data Source=服务器名;Initial Catalog=数据库名;User ID=用户;Password=密码"
providerName="数据库类型" />
在 <connectionStrings> 里,在页面还可以这样引用<%$ ConnectionString:Name%>.写在 <appSettings >中用System.Configuration.ConfigurationManager.AppSettings["name"]检索值;写在 <ConnectionStrings>中用System.Configuration.ConfigurationManager.ConnectionStrings["name"]检索值
I.providerName--获取或设置提供程序名称属性
如果为Aceess数据库--->providerName="System.Data.OleDb"
如果为Oracle 数据库--->providerName="System.Data.OracleClient"或者providerName="Oracle.DataAccess.Client"
如果为SQLite数据库--->providerName="System.Data.SQLite"
如果为sql 数据库--->providerName="System.Data.SqlClient"
II.connectionString
一、Data Source--指生成用户实例的 SQL Server Express 的父实例
SqlConnectionStringBuilder的DataSource属性,对应 connectionString中的Data Source,“Data Source”可以由下列字符串代替:“Server”,“Address”,“Addr”和“Network Address”。
Data Source=.\SQLExpress也可以写成这样Data Source=(local)\SQLExpress。
二、Integrated Security--若要连接到用户实例,需要 Windows 身份验证;不支持 SQL Server 登录名
SqlConnectionStringBuilder 的 IntegratedSecurity 属性,对应 connectionString 中的Integrated Security,“Integrated Security”可以写成“trusted_connection”。
为 True 时,使用当前的 Windows 帐户凭据进行身份验证,为 False 时,需要在连接中指定用户 ID 和密码。可识别的值为 True、False、Yes、No 以及与 True 等效的 SSPI。
如果没有些则必须写上 uid=sa;pwd=123 之类的设置“uid”也可使用“User ID”,“pwd”也可换为“PassWord”。
SSPI:Microsoft安全支持提供器接口(SSPI)是定义得较全面的公用API,用来获得验证、信息完整性、信息隐私等集成安全服务,以及用于所有分布式应用程序协议的安全方面的服务。
应用程序协议设计者能够利用该接口获得不同的安全性服务而不必修改协议本身。
三、AttachDBFilename--连接字符串关键字用于附加主数据库文件 (.mdf),该文件必须包含完整路径名
SqlConnectionStringBuilder 的 AttachDBFilename 属性,对应 connectionString 中的 AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。
AttachDbFileName 属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。
这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的 App_Data 目录所代替。
四、User Instance--设置为 true,这样就可调用用户实例
SqlConnectionStringBuilder 的 UserInstance 属性,对应 connectionString 中的 User Instance ,该值指示是否将连接从默认的 SQL Server 实例重定向到在调用方帐户之下运行并且在运行时启动的实例。
UserInstance=true 时,SQLServerExpress 为了把数据库附加到新的实例,建立一个新的进程,在打开连接的用户身份下运行。
在 ASP.NET 应用程序中,这个用户是本地的 ASPNET 帐号或默认的 NetworkService,这依赖于操作系统。
为了安全地附加非系统管理员帐号(例如ASP.NET帐号)提供的数据库文件,建立一个独立的 SQLServer 用户实例是必要的。
五、Initial Catalog 等同于 Database。
六、providerName 指定值“System.Data.OracleClient”,该值指定 ASP.NET 在使用此连接字符串进行连接时应使用 ADO.NET System.Data.OracleClient 提供程序。
七、DataDirectory --允许开发人员创建基于到数据源的相对路径(而无需指定完整路径)的连接字符串
使用 DataDirectory 时,目录结构中的结果文件的路径不能高于替代字符串指向的目录。如果完全展开的 DataDirectory 为 C:\AppDirectory\app_data,则上面显示的示例连接字符串有效,因为它在 c:\AppDirectory 之下。
参考:
http://www.cnblogs.com/weichao975/archive/2010/07/11/1775090.html(转载来源)
http://msdn.microsoft.com/zh-cn/library/ms254504%28v=vs.110%29.aspx
http://www.cnblogs.com/mikemao/archive/2009/02/02/1382694.html