Asp.Net 数据库连接字符串

1   <configuration>
2     <connectionStrings>
3       <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLExpress;AttachDBFilename=|DataDirectory|aspnetdb.mdf;Initial Catalog=aspnet-MVCCodeFirstDemo-20150828102127;Integrated Security=SSPI;User Instance=true" />
4     </connectionStrings>
5   </configuration>

SqlConnectionStringBuilder实例化时需要使用connectionString。如:SqlConnectionStringBuild builder = new SqlConnectionStringBuild(connectionString);

一、Data Source(数据来源:地址)
SqlConnectionStringBuilder的DataSource属性,对应 connectionString中的Data Source,其意思表示为数据库连接地址源(数据源),“Data Source”可以由下列字符串代替:“Server”,“Address”,“Addr”和“Network Address”。
Data Source=.\SQLExpress也可以写成这样Data Source=(local)\SQLExpress。

二、Integrated Security(集成验证,即:是否使用Windows验证的方式去连接到数据库服务器)
SqlConnectionStringBuilder 的 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,用来获得验证、信息完整性、信息隐私等集成安全服务,以及用于所有分布式应用程序协议的安全方面的服务。
应用程序协议设计者能够利用该接口获得不同的安全性服务而不必修改协议本身。

三、AttachDBFilename
SqlConnectionStringBuilder 的 AttachDBFilename 属性,对应 connectionString 中的 AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。
AttachDbFileName 属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。
这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的 App_Data 目录所代替。

四、User Instance
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 提供程序。

---------------------------------------    附加一些连接语句例子    ---------------------------------------

1 <--普通例子1-->
2 <configuration>
3 <connectionStrings>
4     <add name="Sales" providerName="System.Data.SqlClient" connectionString="server=myserver;database=Products;uid=salesUser;pwd=sellMoreProducts" />
5
6     <add name="NorthWind" providerName="System.Data.SqlClient" connectionString="server=.;database=NorthWind;Integrated Security=SSPI" />
7
8 </connectionStrings>
9 </configuration>
1 <--普通例子2-->
2 <configuration>
3 <connectionStrings>
4     <add name="NorthWind" connectionString="Provider=SQLOLEDB;Integrated Security=SSPI;Initial Catalog=da;Data Source=bar" />
5 </configuration>
1 <connectionStrings>
2    <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Initial Catalog=NorthWind;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
3 </connectionStrings>
4 <--也可写为-->
5 <connectionStrings>
6    <add name="LocalSqlServer" connectionString="Server=.\SQLExpress;Database=NorthWind;Integrated Security=Yes" providerName="System.Data.SqlClient" />
7 </connectionStrings>

----------------------------------------------------------------------------------------------------------

 1 <configuration>
 2 <connectionStrings>
 3     <add name="DB2005_2"
 4     providerName="System.Data.SqlClient"
 5     connectionString="Data Source=.;Initial Catalog=Northwind;User ID=dbtester;Password=zhi;Trusted_Connection=False;Connect Timeout=30;Min Pool Size=16;Max Pool Size=100"/>
 6
 7     <add name="DB2005_1"
 8     providerName="System.Data.SqlClient"
 9     connectionString="Server=.;Database=Northwind;User ID=dbtester;Password=zhi;Trusted_Connection=False;Connect Timeout=30;Min Pool Size=16;Max Pool Size=100"/>
10
11     <add name="Northword2000"
12     providerName="System.Data.SqlClient"
13     connectionString="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;"/>
14
15     <add name="SQLExp"
16        providerName="System.Data.SqlClient"
17        connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\northwnd1.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"/>
18
19     <add name="Oracle"
20       connectionString="Data Source=TEST;User ID=sa;Password=sa;"
21       providerName="System.Data.OracleClient" />
22
23     <add name="oleconn"
24        providerName="System.Data.OleDb"
25        connectionString="Provider=Microsoft.Jet.OleDb.4.0;Data Source=|DataDirectory|northwind.mdb"/>
26
27     <add name="MySql"
28     providerName="MySql.Data.MySqlClient"
29     connectionString="Server=172.29.131.27;Port=3311;DataBase=comctl;Persist Security Info=False;User ID=root;Password=123456;Allow Zero Datetime=true;" />
30 </connectionStrings>
31     <system.data>
32         <DbProviderFactories>
33             <add name="MySQL Data Provider"
34                  invariant="MySql.Data.MySqlClient"
35                  description=".Net Framework Data Provider for MySQL"
36                  type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=5.2.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
37         </DbProviderFactories>
38     </system.data>
39 </configuration>

======================================      可以保存为(以下转自他处).cs      ======================================

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

本文转载自(出处):http://www.cnblogs.com/weichao975/archive/2010/07/11/1775090.html

时间: 2024-11-06 09:57:42

Asp.Net 数据库连接字符串的相关文章

ASP.NET数据库连接字符串的加密与解密

ASP.NET web.config中,数据库连接字符串的加密与解密. 虽然不怎么新鲜,但相信还是有许多人不知道,好,不说废话,直接给方法:开始--->运行,输入cmd,接着输入以下内容 加密: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" "你的Web项目路径" 解密: C:\WINDOWS\Microsoft.NET\Fram

ASP.NET数据库连接字符串总结

一.使用OleDbConnection对象连接OLE DB数据源 1.连接Access 数据库 Access 2000: “provider=Microsoft.Jet.Oledb.3.5;Data Source=Access文件路径” Access 2003: “provider=Microsoft.Jet.Oledb.4.0;Data Source=Access文件路径” Access 2007: “provider=Microsoft.Ace.Oledb.12.0;Data Source=

玩转ASP.NET 5:数据库连接字符串配置及读取

1.连接字符串读取 1.1前言 本来我想在以后重构时,再来说这个问题.可是有园友问我:如何把数据库连接字符串写到Config.json并读取? 原来大家玩xml格式配置文件相当熟悉啦.可是ASP.NET 5项目换成越来越流行的JSON格式当配置文件.如果不去阅读源码,仅从Identity模板代码看,还是很迷糊. 1.2Config.json代码 在BlogASPNET5.ConsoleApp控制台项目(执行程序)中,添加Config.json文件,其代码: { "Data": { &q

ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法

在ASP.NET开发的网站根目录,有一个名为web.config的文件,顾名思义,这是为整个网站进行配置的文件,其格式为XML格式.这里主要谈谈文件中的<connectionStrings>节. <connectionStrings>节是对连接到数据库的字符串进行配置,由于MS SQL Server与ASP.NET同属于微软的产品,因此是使用ASP.NET开发时首选的数据库是MS SQL Server,本文只讨论对MS SQL Server的连接字符串情况.第一种情况,本地开发时,

.NET跨平台之旅:数据库连接字符串写法引发的问题

最近在一个ASP.NET Core站点中遇到一个奇怪问题.当用dotnet run命令启动站点后,开始的一段时间请求执行速度超慢,有时要超过20秒,有时甚至超过1分钟,日志中会记录这样的错误: System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was n

web.config connectionStrings 数据库连接字符串的解释

先来看一下默认的连接SQL Server数据库配置<connectionStrings>   <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="

保护代码中的数据库连接字符串和其他敏感设置

本文假定读者熟悉 C# 和 Visual Basic .NET 摘要 保护应用程序机密(如数据库连接字符串和密码)要求仔细考虑许多相关因素,如数据的敏感程度.可以获得访问权限的人以及如何在安全性.性能和可维护性之间获得平衡,等等.本文解释了数据保护的基础知识,并比较了几种可用于保护应用程序设置的技术.作者探讨了要避免的事项,如在源代码中隐藏密钥,以及使用“本地安全机构”.此外,他还提出了一些有效的解决方案,如数据保护 API. 本页内容 数据隐藏限制对数据的访问加密数据权衡选择存储加密数据单向和

(转载)ASP.NET连接字符串写法总结

一.使用OleDbConnection对象连接OLE DB数据源 1.连接Access 数据库 Access 2000: “provider=Microsoft.Jet.Oledb.3.5;Data Source=Access文件路径” Access 2003: “provider=Microsoft.Jet.Oledb.4.0;Data Source=Access文件路径” Access 2007: “provider=Microsoft.Ace.Oledb.12.0;Data Source=

从HelloWorld启航——数据库连接字符串的困惑

程序员方阵 数据库连接字符串的困惑 数据库连接字符串的组成 驱动程序 ODBC OLE DB JDBC 比较 数据库链接字符串大全 SQL Server 2005 SQL Native Client ODBC Driver SQL Native Client OLE DB Provider SqlConnection NET MySQL MyODBC OLE DB OleDbConnection NET MySqlConnection NET Oracle ODBC OLE DB OleDbCo