Compartir a través de


tabla de _TransformView

Se trata de una tabla temporal de solo lectura que se usa para ver las transformaciones con el modo de vista de transformación. El instalador nunca conserva esta tabla.

Para invocar el modo de vista de transformación, obtenga un identificador y abra la base de datos de referencia. Consulte Obtener un identificador de base de datos. Llame a MsiDatabaseApplyTransform con MSITRANSFORM_ERROR_VIEWTRANSFORM. Esto impide que la transformación se aplique a la base de datos y volque el contenido de la transformación en la tabla _TransformView. Se puede acceder a los datos de la tabla mediante consultas SQL. Consulte Trabajar con consultas.

La tabla _TransformView no se borra cuando se aplica otra transformación. La tabla refleja el efecto acumulativo de las aplicaciones sucesivas. Para ver las transformaciones por separado, debe liberar la tabla.

La _TransformView Tabla tiene las columnas siguientes.

Columna Tipo Llave Nullable
Mesa identificador Y N
Columna text Y N
Fila text Y Y
Datos text N Y
Actual text N Y

Columna

tabla de

Nombre de una tabla de base de datos modificada.

columna de

Nombre de una columna de tabla modificada o INSERT, DELETE, CREATE o DROP.

fila de

Lista de los valores de clave principal separados por pestañas. Los valores de clave principal NULL se representan mediante un carácter de espacio único. Un valor Null en esta columna indica un cambio de esquema.

datos de

Datos, nombre de un flujo de datos o una definición de columna.

actual

Valor actual de la base de datos de referencia o columna un número.

Observaciones

El _TransformView se mantiene en memoria mediante un recuento de bloqueos, que se puede liberar con el siguiente comando SQL.

"ALTER TABLE _TransformView FREE".

Se puede acceder a los datos de la tabla mediante consultas SQL. El lenguaje SQL tiene dos divisiones principales: Lenguaje de definición de datos (DDL) que se usa para definir todos los objetos de una base de datos SQL y lenguaje de manipulación de datos (DML) que se usa para seleccionar, insertar, actualizar y eliminar datos en los objetos definidos mediante DDL.

Las operaciones de transformación lenguaje de manipulación de datos (DML) se indican de la siguiente manera. Lenguaje de manipulación de datos (DML) son las instrucciones de SQL que manipulan, en lugar de definir, los datos.

Operación de transformación Resultado de SQL
Modificación de datos {table} {column} {row} {data} {valor actual}
Insertar fila {table} "INSERT" {row} NULL NULL
Eliminar fila {table} "DELETE" {row} NULL NULL

Las operaciones de transformación lenguaje de definición de datos (DDL) se indican de la siguiente manera. El lenguaje de definición de datos (DDL) son las instrucciones de SQL que definen, en lugar de manipular datos.

Operación de transformación Resultado de SQL
Agregar columna {table} {column} NULL {defn} {número de columna}
Agregar tabla {table} "CREATE" NULL NULL
Colocar tabla {table} "DROP" NULL NULL

Cuando la aplicación de una transformación agrega esta tabla, el campo Datos recibe texto que se puede interpretar como un valor entero de 16 bits. El valor describe la columna denominada en el campo Columna. Puede comparar el valor entero con las constantes de la tabla siguiente para determinar la definición de la columna modificada.

Bit Descripción
bits 0 7
Hexadecimal: 0x0000 0x0100
Decimal: 0 255
Ancho de columna
bit 8
Hexadecimal: 0x0100
Decimal: 256
Una columna persistente. Cero significa una columna temporal.
bit 9
Hexadecimal: 0x0200
Decimal: 1023
Una columna localizable. Cero significa que la columna no se puede localizar.
bits 10 11
Hexadecimal: 0x0000
Decimal: 0
Entero largo
Hexadecimal: 0x0400
Decimal: 1024
Entero corto
Hexadecimal: 0x0800
Decimal: 2048
Objeto binario
Hexadecimal: 0x0C00
Decimal: 3072
Cuerda
bit 12
Hexadecimal: 0x1000
Decimal: 4096
Columna que acepta valores NULL. Cero significa que la columna no acepta valores NULL.
bit 13
Hexadecimal: 0x2000
Decimal: 8192
Columna de clave principal. Cero significa que esta columna no es una clave principal.
bits 14 15
Hexadecimal: 0x4000 0x8000
Decimal: 16384 32768
Reservado

Para ver un ejemplo de script que muestra la tabla de _TransformView, consulte Ver una transformación.