標籤:style blog http color io os 使用 ar strong
SQL Server 2008連接字串寫法大全
一、.NET Framework Data Provider for SQL Server
類型:.NET Framework類庫
使用:System.Data.SqlClient.SqlConnection
廠商:Microsoft
標準安全連線
Data Source = myServerAddress;Initial Catalog = myDataBase;User Id = myUsername;Password = myPassword;
使用伺服器名\執行個體名作為串連指定SQL Server執行個體的資料來源。如果你使用的是SQL Server 2008 Express版,執行個體名為SQLEXPRESS。
可替代的標準安全串連
Server = myServerAddress;Database = myDataBase;User ID = myUsername;Password = myPassword;Trusted_Connection = False;
這條連接字串跟上一條效果一樣。把這條寫出來只是想說,其實很多連接字串的關鍵字有多種寫法。
信任連接
Data Source = myServerAddress;Initial Catalog = myDataBase;Integrated Security = SSPI;
可替代的信任連接
Server = myServerAddress;Database = myDataBase;Trusted_Connection = True;
串連Windows CE裝置的信任連接
通常一台Windows CE裝置在一個域裡是不能被認證和登入的。為了讓一台CE裝置使用SSPI或信任連接和認證,可以使用下面的連接字串:
Data Source = myServerAddress;Initial Catalog = myDataBase;Integrated Security = SSPI;User ID = myDomain
\myUsername;Password = myPassword;
說明一下,這條語句只能在CE裝置上用。
使用IP地址的串連
Data Source = 190.168.1.100,1433;Network Library = DBMSSOCN;Initial Catalog = myDataBase;User
ID = myUsername;Password = myPassword;
這條語句用TCP/IP地址替代了具名管道。在Data Source欄位最後的是使用的連接埠。SQL Server預設使用的連接埠是1433。
開啟MARS功能(multiple active result sets)
Server = myServerAddress;Database = myDataBase;Trusted_Connection = True; MultipleActiveResultSets = true;
MARS不支援ADO.NET 1.0和ADO.NET 1.1。
在串連到SQL Server Express執行個體時附加一個資料庫檔案
Server = .\SQLExpress;AttachDbFilename = c:\asd\qwe\mydbfile.mdf;Database = dbname; Trusted_Connection = Yes;
這裡為什麼還需要Database欄位呢?因為如果指定的資料庫檔案已經被附加,那麼SQL Server不會再附加它,而使用已附加的資料庫作為預設資料庫。
在串連到SQL Server Express執行個體時,從資料目錄下附加一個資料庫檔案
Server = .\SQLExpress;AttachDbFilename = |DataDirectory|mydbfile.mdf; Database = dbname;Trusted_Connection = Yes;
在本地SQL Server Express執行個體上使用使用者執行個體
使用者執行個體這個功能會在串連的過程中,建立一個SQL Server執行個體。該功能只有在本地SQL Server執行個體上,且串連時使用通過本地命名通道的Windows認證。這樣做的好處是,可以給一個在本機電腦上只有相當有限的管理員權限的使用者,建立一個擁有全部許可權的SQL Server執行個體。
Data Source = .\SQLExpress;Integrated Security = true; AttachDbFilename = |DataDirectory|\mydb.mdf;User Instance = true;
若想使用使用者執行個體這個功能,需要先在SQL Server將其開啟。開啟命令為:
sp_configure ‘user instances enabled‘, ‘1‘
取消命令為:
sp_configure ‘user instances enabled‘, ‘0‘
註:這兩條命令只在SQL Server Express中有效。
資料庫鏡像
如果你用ADO.NET或者SQL Native Client去串連一個資料庫鏡像,當這個資料庫鏡像進行故障切換的時候,你的應用程式可以利用磁碟機的特性去自動重新導向串連。當然,你必須在串連欄位裡指定初始的主伺服器和資料庫,以及用於故障切換的鏡像伺服器。
Data Source = myServerAddress;Failover Partner = myMirrorServerAddress;Initial Catalog = myDataBase;Integrated
Security = True;
上面的例子只是介紹了一下如何使用資料庫鏡像,你可以將Failover Partner欄位跟其他連接字串功能組合使用。
非同步處理
Server = myServerAddress;Database = myDataBase;Integrated Security = True;Asynchronous Processing = True;
二、SQL Server Native Client 10.0 OLE DB Provider
類型:OLE DB Provider
使用:Provider=SQLNCLI10
廠商:Microsoft
標準安全連線
Provider = SQLNCLI10;Server = myServerAddress;Database = myDataBase;Uid = myUsername; Pwd = myPassword;
信任連接
Provider = SQLNCLI10;Server = myServerAddress;Database = myDataBase; Trusted_Connection = yes;
"Integrated Security=SSPI" 和 "Trusted_Connection=yes"是等價的。
串連一個SQL Server執行個體
Provider = SQLNCLI10;Server = myServerName\theInstanceName;Database = myDataBase; Trusted_Connection = yes;
使用者名稱、密碼提示
oConn.Properties("Prompt") = adPromptAlways
oConn.Open "Provider = SQLNCLI10;Server = myServerAddress;DataBase = myDataBase;
開啟MARS功能 (multiple active result sets)
Provider = SQLNCLI10;Server = myServerAddress;Database = myDataBase; Trusted_Connection = yes;MARS Connection = True;
加密模式
Provider = SQLNCLI10;Server = myServerAddress;Database = myDataBase; Trusted_Connection = yes;Encrypt = yes;
在串連到SQL Server Express執行個體時附加一個資料庫檔案
Provider = SQLNCLI10;Server = .\SQLExpress;AttachDbFilename = c:\asd\qwe\mydbfile.mdf; Database = dbname;
Trusted_Connection = Yes;
在串連到SQL Server Express執行個體時,從資料目錄下附加一個資料庫檔案
Provider = SQLNCLI10;Server = .\SQLExpress;AttachDbFilename = |DataDirectory|mydbfile.mdf;
Database = dbname;Trusted_Connection = Yes;
資料庫鏡像
Provider = SQLNCLI10;Data Source = myServerAddress;Failover Partner = myMirrorServerAddress;Initial
Catalog = myDataBase;Integrated Security = True;
三、.NET Framework Data Provider for OLE DB
類型:.NET Framework Wrapper Class Library
使用:System.Data.OleDb.OleDbConnection
廠商:Microsoft
橋接到SQL Native Client OLE DB
Provider = SQLNCLI10;Server = myServerAddress;Database = myDataBase;Uid = myUsername; Pwd = myPassword;
四、SQL Server Native Client 10.0 ODBC Driver
類型:ODBC Driver
使用:Driver={SQL Server Native Client 10.0}
廠商:Microsoft
標準安全連線
Driver = {SQL Server Native Client 10.0};Server = myServerAddress;Database = myDataBase;Uid = myUsername;Pwd = myPassword;
信任連接
Driver = {SQL Server Native Client 10.0};Server = myServerAddress;Database = myDataBase;Trusted_Connection = yes;
串連一個SQL Server執行個體
Driver = {SQL Server Native Client 10.0};Server = myServerName\theInstanceName;
Database = myDataBase;Trusted_Connection = yes;
使用者名稱、密碼提示
oConn.Properties("Prompt") = adPromptAlways
Driver = {SQL Server Native Client 10.0};Server = myServerAddress;Database = myDataBase;
開啟MARS功能 (multiple active result sets)
Driver = {SQL Server Native Client 10.0};Server = myServerAddress;Database = myDataBase;Trusted_Connection = yes;
MARS_Connection = yes;
加密模式
Driver = {SQL Server Native Client 10.0};Server = myServerAddress;Database = myDataBase;
Trusted_Connection = yes;Encrypt = yes;
在串連到SQL Server Express執行個體時附加一個資料庫檔案
Driver = {SQL Server Native Client 10.0};Server = .\SQLExpress; AttachDbFilename = c:\asd\qwe\mydbfile.mdf;
Database = dbname;Trusted_Connection = Yes;
在串連到SQL Server Express執行個體時,從資料目錄下附加一個資料庫檔案
Driver={SQL Server Native Client 10.0};Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf;
Database=dbname;Trusted_Connection=Yes;
資料庫鏡像
Driver = {SQL Server Native Client
10.0};Server = myServerAddress;Failover_Partner = myMirrorServerAddress;Database = myDataBase; Trusted_Connection = yes;
五、.NET Framework Data Provider for ODBC
類型:.NET Framework Wrapper Class Library
使用:System.Data.Odbc.OdbcConnection
廠商:Microsoft
橋接到SQL Native Client 10.0 ODBC Driver
下面的語句只是一條例子,不同廠商的ODBC驅動不同。
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
六、SQLXML 4.0 OLEDB Provider
類型:OLE DB Provider
使用:Provider=SQLXMLOLEDB.4.0;Data Provider=providername
廠商:Microsoft
Provider=SQLXMLOLEDB.4.0;Data Provider=SQLNCLI10;Data Source=myServerAddress;Initial Catalog=myDataBase;User
Id=myUsername;Password=myPassword;
七、Context Connection
類型:.NET Framework Class Library
使用:
廠商:Microsoft
通過當前CLR裡的預存程序/函數來串連到“自身”。上下文串連可以讓你,在你的代碼第一次被調用的地方所在的上下文(串連)裡,執行T-SQL語句。
C#
using(SqlConnection connection = new SqlConnection("context connection=true"))
{
connection.Open();
// Use the connection
}
VB.Net
Using connection as new SqlConnection("context connection=true")
connection.Open()
‘ Use the connection
End Using
SQL Server 2008連接字串寫法大全