Método Installer.OpenDatabase
El método OpenDatabase del objeto Installer abre una base de datos existente o crea una nueva, y devuelve un objeto Database. Genera un error si el objeto Database no se puede crear y abrir correctamente.
Sintaxis
Installer.OpenDatabase(
name,
openMode
)
Parámetros
-
name
-
Cadena necesaria que contiene el nombre de la ruta de acceso de la base de datos. Si se proporciona una cadena vacía, se crea una base de datos temporal que no se conserva.
-
openMode
-
Un parámetro de la siguiente lista o una cadena que contiene el nombre de la ruta de acceso del nuevo archivo de base de datos de salida en el que se va a escribir tras la confirmación.
Parámetro Significado - msiOpenDatabaseModeReadOnly
- 0
Abre una base de datos de solo lectura, sin cambios persistentes. - msiOpenDatabaseModeTransact
- 1
Abre una lectura y escritura de una base de datos en modo de transacción. - msiOpenDatabaseModeDirect
- 2
Abre lectura y escritura directas de una base de datos sin transacción. - msiOpenDatabaseModeCreate
- 3
Crea una base de datos, lectura y escritura en modo de transacción. - msiOpenDatabaseModeCreateDirect
- 4
Crea una base de datos, lectura y escritura en modo directo. - msiOpenDatabaseModeListScript
- 5
Abre una base de datos para ver los archivos de script anunciados, como los archivos generados por el método CreateAdvertiseScript. - msiOpenDatabaseModePatchFile
- 32
Agrega esta marca para indicar un archivo de revisión.
Valor devuelto
Objeto Database que representa la base de datos existente o nueva del instalador que se abrió.
Observaciones
Cuando se abre una base de datos como salida de otra, su flujo de información de resumen es realmente un reflejo de solo lectura de la base de datos original y, por tanto, no se puede cambiar. Además, no se conserva con la base de datos. Para crear o modificar la información de resumen de la base de datos de salida, esta debe cerrarse y volver a abrirse.
Para realizar y guardar los cambios en una base de datos, primero abra la base de datos en modo de transacción (msiOpenDatabaseModeTransact), creación (msiOpenDatabaseModeCreate o msiOpenDatabaseModeCreateDirect) o directo (msiOpenDatabaseModeDirect). Después de realizar los cambios, llame siempre al método Commit antes de cerrar el identificador de la base de datos. El método Commit vacía todos los búferes.
Si una base de datos se ha abierto en modo directo, llame siempre al método Commit (msiOpenDatabaseModeDirect o msiOpenDatabaseModeCreateDirect) antes de cerrar la base de datos. Si no lo hace, la base de datos puede resultar dañada.
Dado que el método OpenDatabase inicia el acceso a la base de datos, no se puede usar con una instalación en ejecución.
Si el método no funciona, puede obtener la información de error extendida mediante el método LastErrorRecord.
Requisitos
Requisito | Value |
---|---|
Versión |
Windows Installer 5.0 en Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 en Windows Server 2008 o Windows Vista. Windows Installer en Windows Server 2003 o Windows XP |
Archivo DLL |
|
IID |
IID_IInstaller se define como 000C1090-0000-0000-C000-000000000046 |