Share via


Método CompactDatabase (SQL Server Compact)

El método CompactDatabase reclama espacio desaprovechado en la base de datos local de SQL Server Compact 3.5. Este método se puede usar también para cambiar la configuración del orden de intercalación, cifrado y contraseña de la base de datos.

Nota

A menos que una cadena de conexión de destino especifique explícitamente una contraseña, la base de datos resultante se descifrará independientemente de si el origen se cifró.

Sintaxis

object.CompactDatabase(SourceConnection, DestConnection)

Parámetros

Parámetro Descripción

SourceConnection

Valor de cadena que especifica una conexión con la base de datos de origen que se va a compactar. Se produce un error si la base de datos especificada por SourceConnection ya está abierta.

DestConnection

Valor de cadena que especifica una conexión con la base de datos de destino que se va a crear al compactar. Se produce un error si ya existe la base de datos especificada en DestConnection o existe otro archivo con el mismo nombre.

Ejemplo

HRESULT CompactDatabase(BSTR SourceConnection, BSTR DestConnection);

Notas

Los parámetros SourceConnection y DestConnection especifican las propiedades de las bases de datos de origen y destino. En la siguiente tabla se proporciona una lista de las propiedades de conexión que se pueden especificar para cada parámetro. Todas las demás propiedades de conexión se omiten.

Propiedad Descripción

Provider

Indica el nombre del proveedor que se va a utilizar para conectar con el origen de datos. Si no se especifica esta propiedad, se asume el uso del proveedor OLE DB para SQL Server Compact 3.5. Se produce un error si el nombre del proveedor de la cadena de origen es diferente al nombre del proveedor de la cadena de destino.

Data Source

Indica el nombre de la base de datos. Esta propiedad es necesaria para la información de conexión tanto de origen como de destino.

Locale Identifier

Indica el identificador de configuración regional (LCID) para la nueva base de datos. Si se omite, la base de datos de destino tendrá el mismo LCID que la configuración regional del sistema.

Locale Identifier especifica el orden de intercalación para las comparaciones de cadenas en la base de datos.

SSCE:Database Password

Indica la contraseña, si la base de datos está protegida mediante contraseña. Si la base de datos de origen contiene una contraseña, ésta se debe proporcionar. Si se omite este parámetro en la cadena DestConnection, la base de datos nueva no estará cifrada. Si desea quitar la contraseña de la base de datos de destino, debe establecerla como una cadena vacía. Si se especifica una contraseña en blanco, la base de datos no se cifrará. La contraseña de la base de datos puede tener una longitud máxima de 40 caracteres.

SSCE:encryption mode

or

encryption mode

Los valores para esta propiedad son:

engine default

o bien

platform default

o bien

ppc2003 compatibility

El valor predeterminado es platform default.

SSCE:Encrypt Database

Indica si se cifra la base de datos nueva. Si se omite este parámetro en la cadena DestConnection , la base de datos nueva tendrá el mismo cifrado que la de origen. Es un valor booleano y sus valores son TRUE (si se realiza cifrado) o FALSE (si no se realiza cifrado).

ms174034.note(es-es,SQL.100).gifNota:
Si se especifica SSCE:Database Password, la base de datos siempre se cifra, independientemente de si se indica SSCE:Encrypt Database.

SSCE:Temp File Directory

Especifica la ubicación de la base de datos temporal. Si este parámetro se omite en la cadena DestConnection , se utilizará la ubicación de la base de datos actual como ubicación de la base de datos temporal.

ssce: case sensitive

Valor booleano que determina si la base de datos distingue mayúsculas de minúsculas. Debe establecerse en true para habilitar la distinción de mayúsculas y minúsculas, o en false para deshabilitarla. Si no se especifica, el valor predeterminado es false.

ms174034.note(es-es,SQL.100).gifNota:
Esta propiedad se incluye a partir de la versión SQL Server Compact 3.5 Service Pack 1. Para obtener más información, vea Trabajar con intercalaciones (SQL Server Compact).

Se admiten valores de identificador de configuración regional. Utilice el identificador LCID exclusivo para el valor de Locale Identifier. Para obtener una lista de valores LCID únicos, vea Intercalaciones admitidas (SQL Server Compact). Debe asegurarse de que la configuración regional se admite en el dispositivo en el que se va a crear la base de datos.

Si no especifica ningún valor de LCID al crear la base de datos, SQL Server Compact 3.5 usa la configuración regional del sistema. Esto supone una diferencia con respecto a las versiones anteriores, que siempre habían utilizado la configuración regional en inglés si no se especificaba ninguna.

Importante

Si una aplicación termina de forma anómala antes de completarse la operación Compact, quedará un archivo de base de datos temporal en el sistema. La denominación de este archivo es <nombreDeArchivo>pack.sdf y se debe quitar manualmente.

Vea también

Referencia

Propiedad ErrorRecords (SQL Server Compact)

Otros recursos

Programación del objeto Engine (SQL Server Compact)

Ayuda e información

Obtener ayuda (SQL Server Compact 3.5 Service Pack 1)