Método Database.Merge

El método de combinación del objeto de base de datos combina la base de datos de referencia con la base de datos base.

Sintaxis

Database.Merge(
  reference,
  errorTable
)

Parámetros

reference

El objeto base de datos necesario que se va a combinar en la base de datos.

errorTable

Nombre opcional de una tabla que incluye los nombres de las tablas que contienen conflictos de combinación, el número de filas en conflicto dentro de la tabla y una referencia a la tabla con el conflicto de combinación.

Valor devuelto

Este método no devuelve ningún valor.

Observaciones

La función MsiDatabaseMerge y el método de combinación del objeto base de datos no se pueden usar para combinar un módulo incluido en el paquete de instalación. No se deben usar para combinar módulos de combinación en un paquete de Windows Installer. Para incluir un módulo de combinación en un paquete de instalación, los autores de estos deben seguir las directrices que se describen en el artículo Aplicación de módulos de combinación.

El método de combinación no copia los archivos .cab incrustados ni transformaciones incrustadas de la base de datos de referencia en la base de datos de destino. Los flujos de datos incrustados que aparecen en la tabla Binaria o tabla Icono se copian de la base de datos de referencia a la base de datos de destino. Los almacenamientos incrustados en la base de datos de referencia no se copian a la base de datos de destino.

Si no se proporciona ninguna tabla, el mensaje de error general proporciona el número de tablas que contienen conflictos de combinación. Se puede pasar cualquier tabla, pero todas las demás columnas deben ser anulables porque se produce un error en la operación para actualizar la tabla Error si una columna no acepta valores NULL. También se puede pasar una tabla recién creada porque el método de combinación crea automáticamente las columnas que usa si se encuentran conflictos de combinación. Se usan dos columnas para presentar conflictos de combinación. La primera columna es el nombre de la tabla y la columna de clave principal. La segunda columna es el número de filas de esa tabla que tienen errores de combinación.

Si las tablas del mismo nombre en ambas bases de datos no coinciden en el número de claves principales, los tipos de columna, el número de columnas o los nombres de columna, el método de combinación produce un error y envía un mensaje de error que indica lo que ha ocurrido.

Para que la tabla Error permanezca, el controlador de errores debe confirmar la base de datos a la que pertenece la tabla Error. Sin embargo, esta confirmación debe realizarse después de usar la tercera columna para obtener las referencias a esas tablas en las que se produjeron conflictos de combinación.

Si se produce un error en la propiedad, 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
Msi.dll
IID
IID_IDatabase se define como 000C109D-0000-0000-C000-000000000046