Compartilhar via


SqlConnectionStringBuilder.AttachDBFilename Propriedade

Definição

Obtém ou define uma cadeia de caracteres que contém o nome do arquivo de dados primário. Isso inclui o nome de caminho completo de um banco de dados anexável.

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

Valor da propriedade

O valor da propriedade AttachDBFilename ou String.Empty se nenhum valor tiver sido fornecido.

Exceções

Para definir o valor como nulo, use Value.

Exemplos

O exemplo a seguir cria uma nova SqlConnectionStringBuilder instância e define a AttachDBFilename propriedade para especificar o nome de um arquivo de dados anexado.

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

Comentários

Essa propriedade corresponde às chaves "AttachDBFilename", "propriedades estendidas" e "nome de arquivo inicial" dentro da cadeia de conexão.

AttachDBFilename só tem suporte para arquivos de dados primários com uma extensão .mdf.

Se o valor da chave AttachDBFileName for especificado na cadeia de conexão, o banco de dados será anexado e se tornará o banco de dados padrão para a conexão.

Se essa chave não for especificada e se o banco de dados tiver sido anexado anteriormente, o banco de dados não será reanexado. O banco de dados anexado anteriormente será usado como o banco de dados padrão para a conexão.

Se essa chave for especificada junto com a chave AttachDBFileName, o valor dessa chave será usado como alias. No entanto, se o nome já estiver usado em outro banco de dados anexado, a conexão falhará.

O caminho pode ser absoluto ou relativo usando a cadeia de caracteres de substituição DataDirectory. Se DataDirectory for usado, o arquivo de banco de dados deverá existir em um subdiretório do diretório apontado pela cadeia de caracteres de substituição. Nota: Não há suporte para nomes de caminho de servidor remoto, HTTP e UNC.

O nome do banco de dados deve ser especificado com o palavra-chave 'database' (ou um de seus aliases) como no seguinte:

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

Um erro será gerado se um arquivo de log existir no mesmo diretório que o arquivo de dados e o palavra-chave 'banco de dados' for usado ao anexar o arquivo de dados primário. Nesse caso, remova o arquivo de log. Depois que o banco de dados for anexado, um novo arquivo de log será gerado automaticamente com base no caminho físico.

Aplica-se a

Confira também