SqlConnectionStringBuilder.AttachDBFilename 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定包含主要資料檔名稱的字串。 這包括可附加之資料庫的完整路徑名稱。
public:
property System::String ^ AttachDBFilename { System::String ^ get(); void set(System::String ^ value); };
public string AttachDBFilename { get; set; }
member this.AttachDBFilename : string with get, set
Public Property AttachDBFilename As String
屬性值
AttachDBFilename
屬性的值,如果未提供任何值,則為 String.Empty
。
例外狀況
若要將值設定為 null,請使用 Value。
範例
下列範例會建立新的 SqlConnectionStringBuilder 實例,並設定 AttachDBFilename
屬性以指定附加資料檔案的名稱。
using Microsoft.Data.SqlClient;
class Program
{
static void Main()
{
try
{
string connectString =
"Server=(local);" +
"Integrated Security=true";
SqlConnectionStringBuilder builder =
new SqlConnectionStringBuilder(connectString);
Console.WriteLine("Original: " + builder.ConnectionString);
Console.WriteLine("AttachDBFileName={0}", builder.AttachDBFilename);
builder.AttachDBFilename = @"C:\MyDatabase.mdf";
Console.WriteLine("Modified: " + builder.ConnectionString);
using (SqlConnection connection = new SqlConnection(builder.ConnectionString))
{
connection.Open();
// Now use the open connection.
Console.WriteLine("Database = " + connection.Database);
}
Console.WriteLine("Press any key to finish.");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
備註
這個屬性會對應至連接字串中的 "AttachDBFilename"、"extended properties" 和 "initial file name" 索引鍵。
AttachDBFilename
僅支援副檔名為 .mdf 的主要資料檔案。
如果在連接字串中指定 AttachDBFileName 索引鍵的值,則會附加資料庫,並成為連接的預設資料庫。
如果未指定此索引鍵,而且先前附加資料庫,將不會重新附加資料庫。 先前附加的資料庫將會作為連接的預設資料庫。
如果此金鑰與 AttachDBFileName 機碼一起指定,此索引鍵的值將會當做別名使用。 不過,如果名稱已在另一個附加資料庫中使用,連線將會失敗。
路徑可能是絕對或相對路徑,方法是使用 DataDirectory 替代字串。 如果使用 DataDirectory,資料庫檔案必須存在於替代字串所指向目錄的子目錄中。 注意: 不支援遠端伺服器、HTTP 和 UNC 路徑名稱。
資料庫名稱必須使用關鍵字 'database' (或其其中一個別名來指定) ,如下列所示:
"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"
如果在與資料檔相同的目錄中有記錄檔存在,則會產生錯誤,而且在附加主要資料檔時會使用 'database' 關鍵字。 在此情形下,請移除此記錄檔。 一旦附加資料庫之後,就會根據實體路徑自動產生新的記錄檔。