私下认可情形下,Integrated Security 属性为 False
,那代表将禁止使用Windows身份验证。若无显式地把这几个天性的值设置为True,连接将动用SQL
Server身份验证,因而,必需提供SQL Server顾客ID和密码。Integrated
Security属性还能够鉴其余别的值唯有SSPI(Security Support Provider
Interface,安全性补助提供者接口卡塔尔国。在颇负的Windows
NT操作系统上,当中囊括Windows NT
4.0、二零零三、XP,都支持值SSPI。它是运用Windows身份验证时方可应用的惟一接口,相当于把Integrated
Security 属性值设置为True。

此处详细的牵线了各个数据库的各样连接

1、SQL Server的连接形式

四、User Instance
SqlConnectionStringBuilder 的 UserInstance 属性,对应 connectionString
中的 User Instance ,该值提示是还是不是将连接从私下认可的 SQL Server
实例重定向到在调用方帐户之下运转而且在运作时运行的实例。
UserInstance=true 时,SQLServerExpress
为了把数据库附加到新的实例,建设构造一个新的长河,在展开连接的客商身份下运作。
在 ASP.NET 应用程序中,那几个顾客是地面包车型客车 ASPNET 帐号或暗中同意的
NetworkService,那依赖于操作系统。
为了安全地附加非系统助理馆员帐号(比如ASP.NET帐号)提供的数据库文件,创立多个独自的
SQLServer 客户实例是少不了的。

SQL Server 身份验证标准连接:

列表A

列表B

能够保留为(以下转自他处).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 SE帕杰罗VE牧马人服务器,纵然SQL
SE中华VVERubicon服务器不帮助这种格局登入时,就能够出错
        //表示你的连续几日安全注解办法,可用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的连年格局时,以本土服务器(LocalHost卡塔尔国,数据库(testDBState of Qatar为例,能够有以下一些三翻五次格局

// .NET Framework Data Provider for SQL Server 信赖连接写法   
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated
Security=SSPI;   

更加的多字符串连接表达请看MSDN:

一、Data Source
SqlConnectionStringBuilder的DataSource属性,对应
connectionString中的Data Source,“Data
Source”能够由下列字符串代替:“Server”,“Address”,“Addr”和“Network
Address”。
Data Source=.\SQLExpress也能够写成这么Data Source=(local卡塔尔国\SQLExpress。

server=.sqlexpress; database=testDB; uid=sa; pwd=123456

          在Windows身份验证形式中,SQL
Server使用Windows的安全子系统对客商连接进行有效验证。就算展现地钦定客商ID和密码,SQL
Server也不检讨一而再一而再再而三字符串中的客户ID和密码。因为只有Windows
NT、二〇〇四、XP帮忙SSPI,由此只要正利用的是那几个操作系统,则一定要使用Windows集成的安全攻略去老是SQL
Server。无论接受哪四个操作系统,当使用SQL
Server身份验证时,必须在连接字符串中钦赐客商ID和密码: Data Source=ServerName;User
ID=donaldx;Password=unbreakable

一网打尽SQL Server 连接时的有个别骨干难题后计算

二、Integrated Security
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”。

在Windows身份验证格局中,SQL
Server使用Windows的安全子系统对客户连接进行有效验证。即便展现地内定客户ID和密码,SQL
Server也不检查三翻五次字符串中的客商ID和密码。因为唯有Windows
NT、二〇〇三、XP援救SSPI,由此假诺正选择的是那几个操作系统,则必须要采纳Windows集成的安全计策去老是SQL
Server。不论选拔哪叁个操作系统,当使用SQL
Server身份验证时,必需在三番五次字符串中钦点顾客ID和密码:

数据库的连接性已经发展成为应用程序开荒的一个标准方面。数据库连接字符串今后一度改成各种项指标标准必备条件。笔者开掘自个儿为了找到所急需的句法,平日要从此外多个应用程序中复制连接字符串可能扩充一回寻觅。这么些在与SQL
Server交互作用操作时更是如此,因为它有太多的延续字符串选项。以往就让大家来研商一下连连字符串的广大上边。

          私下认可情形下,SQL Server .NET Data
Provider连接钦赐客户的暗中同意数据库,当在数据库中开创客商时,能够设置客户的私下认可数据库。别的,也足以在随便时间改变客商的暗中同意数据库。比方,系统管理员的默许数据库是master。假使想要连接分裂的数据库,应该钦定数据库的称呼:
Data Source=ServerName;Integrated Security=SSPI;Initial
Catalog=Northwind

 

Data Source = myServerAddress; Initial Catalog = myDataBase; User Id =
myUsername; Password = myPassword;

连续几日字符串

和Data Source(数据源)、Initial Catalog(开头编目)、User
ID(客户ID)、和Password(密码)等因素一同,下边那个接纳都以可用的: 

六、providerName 钦赐值“System.Data.OracleClient”,该值内定 ASP.NET
在应用此接二连三字符串实行连接时应利用 ADO.NET System.Data.OracleClient
提供程序。

Server=LocalHost; Persist Security Info=False;Integrated
Security=SSPI;Database= testDB;Uid=sa;Pwd=sa;Initial
Catalog=Northwind;Data Source=LocalHost;Connect Timeout=20;

Dim conn As SqlConnection = New
SqlConnection() conn.ConnectionString = cString conn.Open()

  • Application
    Name(应用程序名称):
    应用程序的名称。若无被内定的话,它的值为.NET
    SqlClient Data Provider(数据提供程序).
  • AttachDBFilename/extended properties(增添属性)/Initial File
    Name(起始文件名):
    可连接数据库的第一文件的称号,富含完整路线名称。数据库名称必需用关键字数据库内定。
  • Connect 提姆eout(连接超时)/Connection
    提姆eout(连接超时):
    多个到服务器的连天在悬停早前等待的时光长短(以秒计),缺省值为15。
  • Connection
    Lifetime(连接生存时间):
    当三个一而再被重回到连接池时,它的开创时间会与眼下时刻打开自己检查自纠。若是这些时间跨度超越了连年的保藏期的话,连接就被吊销。其缺省值为0。
  • Connection
    Reset(连接重新设置):
    代表叁个接连在从连接池中被移除时是不是被重新苏醒设置。一个伪的有用在得到四个连接的时候就没有必要再开展五个外加的服务器来回运作,其缺省值为真。
  • Current Language(当前语言):SQL Server语言记录的名目。
  • Data
    Source(数据源)/Server(服务器)/Address(地址)/Addr(地址)/Network
    Address(网络地址):
    SQL Server实例的名目或网络地址。
  • Encrypt(加密):当班值日为真时,假使服务器安装了授权证书,SQL
    Server就能够对持有在顾客和服务器之间传输的数量选取SSL加密。被选取的值有true(真)、false(伪)、yes(是)和no(否)。
  • Enlist(登记):表示连接池程序是不是会活动注册创立线程的日前作业语境中的连接,其缺省值为真。
  • Database(数据库)/Initial Catalog(初叶编目):数据库的名目。
  • Integrated Security(集成安全)/Trusted
    Connection(受信连接):
    代表Windows认证是不是被用来三番五次数据库。它能够被设置成真、伪也许是和真对等的sspi,其缺省值为伪。
  • Max Pool
    Size(连接池的最大体积):
    连接池允许的连接数的最大值,其缺省值为100。
  • Min Pool
    Size(连接池的蝇头容积):
    连接池允许的连接数的一丁点儿值,其缺省值为0。
  • Network Library(网络库)/Net(网络):用来组建到二个SQL
    Server实例的连接的互联网库。扶植的值满含: dbnmpntw (Named
    Pipes卡塔尔、dbmsrpcn (Multiprotocol/RPC卡塔尔国、dbmsvinn(Banyan
    Vines卡塔尔(قطر‎、dbmsspxn (IPX/SPXState of Qatar和dbmssocn
    (TCP/IP卡塔尔(قطر‎。左券的动态链接库必得被安装到符合的接连几日,其缺省值为TCP/IP。
  • Packet
    Size(数据包大小):
    用来和数据库通讯的互联网数据包的大小。其缺省值为8192。
  • Password(密码)/Pwd:与帐户名相对应的密码。
  • Persist Security
    Info(保持安全音讯):
    用来明确一旦延续创设了今后安全音信是还是不是可用。即便值为真的话,表明像客商名和密码那样对安全性相比灵敏的数额可用,而即使值为伪则不可用。重新复苏设置连接字符串将重新配置蕴含密码在内的持有连接字符串的值。其缺省值为伪。
  • Pooling(池):明确是不是接受连接池。假若值为真的话,连接就要从合适的连接池中收获,或者,假诺供给的话,连接将被创立,然后被参加少量的连接池中。其缺省值为真。
  • User ID(用户ID):用来登录数据库的帐户名。
  • Workstation ID(工作站ID):连接到SQL
    Server的职业站的称谓。其缺省值为地方计算机的称谓。

<add name=”DefaultDB”
connectionString=”DriverClass=NHibernate.Driver.SQLite20Driver;Dialect=NHibernate.Dialect.SQLiteDialect;Data
Source=|DataDirectory|\data.db3″ />

Data Source=LocalHost;Initial Catalog= testDB;Integrated
Security=SSPI;Persist Security Info=False;Workstation Id=XXX;Packet
Size=4096;

// .NET Framework Data Provider for SQL Server 信任连接另一种写法   
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

小结如下:

—————————————    附加一些三番五次语句例子   

<–普通例子1–>
<configuration>
<connectionStrings>
    <add name=”Sales” providerName=”System.Data.SqlClient”
connectionString=”server=myserver;database=Products;uid=salesUser;pwd=sellMoreProducts”
/>

    <add name=”NorthWind” providerName=”System.Data.SqlClient”
connectionString=”server=.;database=NorthWind;Integrated Security=SSPI”
/>

</connectionStrings>
</configuration>

<–普通例子2–>
<configuration>
<connectionStrings>
    <add name=”NorthWind”
connectionString=”Provider=SQLOLEDB;Integrated Security=SSPI;Initial
Catalog=da;Data Source=bar” />
</configuration>


<connectionStrings>
   <add name=”LocalSqlServer” connectionString=”Data
Source=.\SQLExpress;Initial Catalog=NorthWind;Integrated Security=SSPI”
providerName=”System.Data.SqlClient” />
</connectionStrings>
<–也可写为–>
<connectionStrings>
   <add name=”LocalSqlServer”
connectionString=”Server=.\SQLExpress;Database=NorthWind;Integrated
Security=Yes” providerName=”System.Data.SqlClient” />
</connectionStrings>


<configuration>
<connectionStrings>
    <add name=”DB2005_2″
    providerName=”System.Data.SqlClient”
    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″/>

    <add name=”DB2005_1″
    providerName=”System.Data.SqlClient”
    connectionString=”Server=.;Database=Northwind;User
ID=dbtester;Password=zhi;Trusted_Connection=False;Connect
Timeout=30;Min Pool Size=16;Max Pool Size=100″/>

    <add name=”Northword2000″
    providerName=”System.Data.SqlClient”
    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;”/>

    <add name=”SQLExp”
       providerName=”System.Data.SqlClient”
       connectionString=”Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\northwnd1.mdf;Integrated
Security=True;Connect Timeout=30;User Instance=True”/>
   
    <add name=”Oracle”
      connectionString=”Data Source=TEST;User ID=sa;Password=sa;”
      providerName=”System.Data.OracleClient” />

    <add name=”oleconn”
       providerName=”System.Data.OleDb”
       connectionString=”Provider=Microsoft.Jet.OleDb.4.0;Data
Source=|DataDirectory|northwind.mdb”/>

    <add name=”MySql”
    providerName=”MySql.Data.MySqlClient”
   
connectionString=”Server=172.29.131.27;Port=3311;DataBase=comctl;Persist
Security Info=False;User ID=root;Password=123456;Allow Zero
Datetime=true;” />
</connectionStrings>
    <system.data>
        <DbProviderFactories>
            <add name=”MySQL Data Provider”
                 invariant=”MySql.Data.MySqlClient”
                 description=”.Net Framework Data Provider for MySQL”
                 type=”MySql.Data.MySqlClient.MySqlClientFactory,
MySql.Data, Version=5.2.5.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d”/>
        </DbProviderFactories>
    </system.data>
</configuration>

======================================     

Data Source=ServerName;Integrated Security=True;

2、Initial Catalog
  数据库名称
  Initial Catalog 能够由下俩字符串取代:“Database”
3、Integrated Security
  “Integrated Security”能够写成“trusted_connection”
  为true时,使用当前的 Windows 身份验证
  为false时,须要在接连中钦点客户名和密码(就算三番四次字符串中有User Id
和Password也是不起成效的!卡塔尔国
  Integrated
Security 可以安装为: True, false, yes, no
,那多少个轻易了然了,其余,还是可以够安装为:sspi ,约等于 True

以本地服务器(LocalHostState of Qatar,数据库(Northwind卡塔尔(قطر‎为例,能够有以下一些一而再再而三情势

岂可是Sql server 二零零七express中采纳,也得以在其它的文件数据库中使用,比方Sqllite数据库文件的连天字符串:

选拔本地的SQL
Server(localhost卡塔尔国,借使想要使用远程服务器运转,应该在示范对象中把科学的劳务器赋给Data
Source
属性。此外,还非得内定所协理的两种身份验证方法(即Windows身份验证和SQL
Server身份验证卡塔尔中的此中一种。Windows身份验证使用Windows登陆用户位置连接数据库教程,而SQL身份验证供给显式地钦定SQL
Server客户ID和密码。要想利用Windows身份验证,必需在连接字符串中满含Integrated Security 属性:

SQL Server .NET Data Provider
连接字符串饱含八个由一些天性名/值对构成的汇聚。每叁个属性/值对都由支行隔绝。
         
PropertyName1=Value1;PropertyName2=Value2;PropertyName3=Value3;…..
雷同,连接字符串必需带有SQL
Server实例名称:           Data
Source=ServerName;          
使用本地的SQL
Server(localhost卡塔尔国,假若想要使用远程服务器运维,应该在演示对象中把正确的服务器赋给Data
Source
属性。别的,还非得钦命所支撑的三种身份验证方法(即Windows身份验证和SQL
Server身份验证卡塔尔中的此中一种。Windows身份验证使用Windows登入顾客身份连接数据库,而SQL身份验证必要显式地钦命SQL
Server顾客ID和密码。要想使用Windows身份验证,必得在一连字符串中回顾Integrated Security 属性:          
Data Source=ServerName;Integrated Security=True;

连接字符串

先来看一下暗中同意的总是SQL Server数据库配置
<connectionStrings>
   <add name=”LocalSqlServer” connectionString=”Data
Source=.\SQLExpress;Integrated
Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User
Instance=true” providerName=”System.Data.SqlClient” />
</connectionStrings>

admin

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注