Compartir a través de


DetachDB Method

Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan.

The DetachDB method makes a database invisible to an instance of Microsoft SQL Server.

Sintaxis

object.DetachDB(DBName [,bCheck ] ) as String

Parts

  • object
    Expression that evaluates to an object in the Applies To list.

  • DBName
    String that specifies an existing, attached database by name.

  • bCheck
    Optional. When TRUE (default), statistics supporting query optimization are updated prior to the detach operation. When FALSE, statistics are not updated prior to the detach operation.

Prototype (C/C++)

HRESULT DetachDB(SQLDMO_LPCSTR DBName,
SQLDMO_LPBSTR pResult,
BOOL bCheck = TRUE);

Returns

A string containing status or error message detail.

Notas

SQL Server implements database detach and attach operations to allow relocation of the operating system files implementing storage for the database and its transaction log. When the database is detached, the files can be moved without negatively affecting an instance of SQL Server.

Nota importanteImportante

Ensure that bCheck is TRUE when detaching a database for which statistics cannot be updated in the future. For example, databases that will be implemented on read-only media such as CD-ROM should always have query optimization statistics updated as the last step before the detach operations.

For more information about attaching a detached database by using SQL Distributed Management Objects (SQL-DMO), see AttachDB Method and AttachDBWithSingleFile Method.

Making a database invisible to an instance of SQL Server by using the DetachDB method requires appropriate permission. The SQL Server login used for SQLServer object connection must be a member of the system-defined role sysadmin.

Applies To: