SQLServer数据库之web.config connectionStrings 数据库连接字符串的解释
小标 2018-10-19 来源 : 阅读 1607 评论 0

摘要:本文主要向大家介绍了SQLServer数据库之web.config connectionStrings 数据库连接字符串的解释,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

本文主要向大家介绍了SQLServer数据库之web.config connectionStrings 数据库连接字符串的解释,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

先来看一下默认的连接SQL Server数据库配置   
SqlConnectionStringBuilder实例化时需要使用connectionString。如:SqlConnectionStringBuild builder = new SqlConnectionStringBuild(connectionString);
一、Data SourceSqlConnectionStringBuilder的DataSource属性,对应 connectionString中的Data Source,“Data Source”可以由下列字符串代替:“Server”,“Address”,“Addr”和“Network Address”。Data Source=.\SQLExpress也可以写成这样Data Source=(local)\SQLExpress。
二、Integrated SecuritySqlConnectionStringBuilder 的 IntegratedSecurity 属性,对应 connectionString 中的I ntegrated 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,用来获得验证、信息完整性、信息隐私等集成安全服务,以及用于所有分布式应用程序协议的安全方面的服务。应用程序协议设计者能够利用该接口获得不同的安全性服务而不必修改协议本身。
三、AttachDBFilenameSqlConnectionStringBuilder 的 AttachDBFilename 属性,对应 connectionString 中的 AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。AttachDbFileName 属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的 App_Data 目录所代替。
四、User InstanceSqlConnectionStringBuilder 的 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 提供程序。
PS:DataDirectory是什么?
asp.net 2.0有一个特殊目录app_data,通常Sql Server 2005 express数据文件就放在这个目录,相应的数据库连接串就是:connectionString="…… data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User Instance=true"这里有一个DataDirectory的宏,它表示什么意义呢?
DataDirectory是表示数据库路径的替换字符串。由于无需对完整路径进行硬编码,DataDirectory 简化了项目的共享和应用程序的部署。例如,无需使用以下连接字符串:"Data Source= c:\program files\MyApp\app_data\Mydb.mdf"通过使用|DataDirectory|(包含在如下所示的竖线中),即可具有以下连接字符串:"Data Source = |DataDirectory|\Mydb.mdf" 。
不仅仅是Sql server 2005 express中使用,也可以在其它的文件数据库中使用,例如Sqllite数据库文件的连接字符串:

======================================      可以保存为(以下转自他处).cs      ======================================
using System.Data.SqlClient;using System.Configuration;public class Class1{    public Class1()    {        //Persist Security Info如果数据库连接成功后不再需要连接的密码,建议False        //string sql2000 = "Initial Catalog=Northwind;User ID=dbtester;PassWord=zhi;Persist Security Info=false;Data Source=(local);Connect Timeout=30;Min Pool Size=16;Max Pool Size=100;";        //string sql2000 = "Initial Catalog=Northwind;User ID=sa;PassWord=5;Persist Security Info=false;Data Source=.";        //string sql2000 = "Initial Catalog=Northwind;User ID=sa;PassWord=5;Persist Security Info=false;Data Source=newtime";        string source = "server=(local);integrated security=SSPI;database=Northwind";        string expressSource = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\northwnd.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";        //Integrated Security采用windows的集成身份验证,integraged   Security=SSPI;        //Integrated Security=SSPI 这个表示以当前WINDOWS系统用户身去登录SQL SERVER服务器,如果SQL SERVER服务器不支持这种方式登录时,就会出错        //表示你的连接安全验证方式,可用trusted_connection=yes取代        //Integrated Security 为 True。用户实例仅与集成安全性一起使用,带有用户名和密码的 SQL Server 用户不起作用。        //string source3 = @"Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog= pubs;UserID=sa;Password=asdasd;";        //(DBMSSOCN=TCP/IP instead of Named Pipes, at the end of the Data Source is the port to use (1433 is the default))        //Standard Security:        string source4 = "Data Source=Aron1;Initial Catalog= pubs;UserId=sa;Password=asdasd;";        string source5 = "Server=Aron1;Database=pubs;UserID=sa;Password=asdasd;Trusted_Connection=False";        //Trusted_Connection ‘false‘ 当为 false 时,将在连接中指定用户 ID 和密码。当为 true 时,将使用当前的 Windows 帐户凭据进行身份验证。        //可识别的值为 true、false、yes、no 以及与 true 等效的 sspi(强烈推荐)。所以一定要设置Trusted_Connection= false,以防被别人"登录"、"注入语句"等        string source6 = "Data Source=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;";        string source7 = "Server=Aron1;Database=pubs;Trusted_Connection=True;";        //(use serverName\instanceName as Data Source to use an specifik SQLServer instance, only SQLServer2000)        //Integrated   Security或Trusted_Connection   ‘false‘   当为   false   时,        //将在连接中指定用户   ID   和密码。当为   true   时,将使用当前的   Windows   帐户凭据进行身份验证        //VS2003:string connStr=System.Configuration.ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"];2003中用的        //VS2005:string connStr=System.Configuration.ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ToString(); 2005-8中用        System.Configuration.ConnectionStringSettings i = System.Configuration.ConfigurationManager.ConnectionStrings["Northword2000"];    }}

本文由职坐标整理并发布,希望对同学们学习SQL Server有所帮助,更多内容请关注职坐标数据库SQL Server数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 1
看完这篇文章有何感觉?已经有1人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程