Freigeben über


SqlConnectionStringBuilder.AttachDBFilename Eigenschaft

Definition

Ruft eine Zeichenfolge ab, die den Namen der Primärdatendatei enthält, oder legt diese Zeichenfolge fest. Dazu gehört der vollständige Pfadname einer anfügbaren Datenbank.

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

Eigenschaftswert

Der Wert der AttachDBFilename-Eigenschaft oder String.Empty, wenn kein Wert angegeben wurde.

Ausnahmen

Verwenden Sie Value, um den Wert auf NULL festzulegen.

Beispiele

Im folgenden Beispiel wird eine neue SqlConnectionStringBuilder instance erstellt und die AttachDBFilename -Eigenschaft festgelegt, um den Namen einer angefügten Datendatei anzugeben.

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);
        }
    }
}

Hinweise

Diese Eigenschaft entspricht auch den Schlüsseln "AttachDBFilename", "extended properties" und "initial file name" in der Verbindungszeichenfolge.

AttachDBFilename wird nur für primäre Datendateien mit der MDF-Erweiterung unterstützt.

Wenn der Wert des AttachDBFileName-Schlüssels in der Verbindungszeichenfolge angegeben wird, wird die Datenbank angefügt und wird zur Standarddatenbank für die Verbindung.

Wenn dieser Schlüssel nicht angegeben ist und die Datenbank zuvor angefügt wurde, wird die Datenbank nicht erneut angefügt. Die zuvor angefügte Datenbank wird als Standarddatenbank für die Verbindung verwendet.

Wenn dieser Schlüssel zusammen mit dem Schlüssel AttachDBFileName angegeben wird, wird der Wert dieses Schlüssels als Alias verwendet. Wenn der Name jedoch bereits in einer anderen angefügten Datenbank verwendet wird, schlägt die Verbindung fehl.

Der Pfad kann absolut oder relativ sein, indem die DataDirectory-Ersetzungszeichenfolge verwendet wird. Wenn DataDirectory verwendet wird, muss sich die Datenbankdatei in einem Unterverzeichnis des Verzeichnisses befinden, auf das von der Ersetzungszeichenfolge verwiesen wird. Hinweis: Remoteserver-, HTTP- und UNC-Pfadnamen werden nicht unterstützt.

Der Datenbankname muss mit dem Schlüsselwort (keyword) "Datenbank" (oder einem ihrer Aliase) wie folgt angegeben werden:

"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"

Ein Fehler wird generiert, wenn eine Protokolldatei im gleichen Verzeichnis wie die Datendatei enthalten ist und beim Anfügen der primären Datendatei das Schlüsselwort "database" verwendet wird. Entfernen Sie in diesem Fall die Protokolldatei. Sobald die Datenbank angefügt wird, wird automatisch auf Grundlage des physischen Pfads eine neue Protokolldatei generiert.

Gilt für:

Weitere Informationen