Tabela _TransformView
Esta é uma tabela temporária somente leitura usada para exibir transformações com o modo de exibição de transformação. Esta tabela nunca é mantida pelo instalador.
Para invocar o modo de exibição de transformação, obtenha um identificador e abra o banco de dados de referência. Consulte Obtendo um identificador de banco de dados. Chame MsiDatabaseApplyTransform com MSITRANSFORM_ERROR_VIEWTRANSFORM. Isso impede que a transformação seja aplicada ao banco de dados e despeja o conteúdo da transformação na tabela _TransformView. Os dados na tabela podem ser acessados usando consultas SQL. Consulte Trabalhando com consultas.
A tabela _TransformView não é limpa quando outra transformação é aplicada. O quadro reflete o efeito cumulativo de pedidos sucessivos. Para visualizar as transformações separadamente, você deve liberar a tabela.
A Tabela _TransformView tem as seguintes colunas.
Coluna | Tipo | Chave | Nulo |
---|---|---|---|
Tabela | Identificador | Y | N |
Coluna | de texto | Y | N |
Linha | de texto | Y | Y |
Dados | de texto | N | Y |
Atual | de texto | N | Y |
Coluna
-
Tabela
-
Nome de uma tabela de banco de dados alterada.
-
Coluna
-
Nome de uma coluna de tabela alterada ou INSERIR, EXCLUIR, CRIAR ou SOLTAR.
-
Linha
-
Uma lista dos valores de chave primária separados por tabulações. Os valores de chave primária nulos são representados por um único caractere de espaço. Um valor Nulo nesta coluna indica uma alteração de esquema.
-
Dados
-
Dados, nome de um fluxo de dados ou uma definição de coluna.
-
Atual
-
Valor atual do banco de dados de referência ou coluna um número.
Comentários
O _TransformView é mantido na memória por uma contagem de bloqueio, que pode ser liberada com o seguinte comando SQL.
"ALTER TABLE _TransformView GRÁTIS".
Os dados na tabela podem ser acessados usando consultas SQL. A linguagem SQL tem duas divisões principais: Data Definition Language (DDL), que é usada para definir todos os objetos em um banco de dados SQL, e Data Manipulation Language (DML), que é usada para selecionar, inserir, atualizar e excluir dados nos objetos definidos usando DDL.
As operações de transformação DML (Data Manipulation Language) são indicadas da seguinte forma. Data Manipulation Language (DML) são aquelas instruções em SQL que manipulam, em vez de definir, dados.
Operação de transformação | Resultado SQL |
---|---|
Modificar dados | {tabela} {coluna} {linha} {dados} {valor atual} |
Inserir linha | {tabela} "INSERT" {row} NULL NULL |
Excluir linha | {tabela} "DELETE" {row} NULL NULL |
As operações de transformação DDL (Data Definition Language) são indicadas da seguinte forma. Data Definition Language (DDL) são aquelas instruções em SQL que definem, em vez de manipular, dados.
Operação de transformação | Resultado SQL |
---|---|
Adicionar coluna | {tabela} {coluna} NULL {defn} {número da coluna} |
Adicionar tabela | {tabela} "CRIAR" NULL NULL NULL |
Mesa suspensa | {tabela} "DROP" NULL NULL NULL |
Quando a aplicação de uma transformação adiciona essa tabela, o campo Dados recebe texto que pode ser interpretado como um valor inteiro de 16 bits. O valor descreve a coluna nomeada no campo Coluna. Você pode comparar o valor inteiro com as constantes na tabela a seguir para determinar a definição da coluna alterada.
Pouco | Descrição |
---|---|
Bits 0 7 |
Hexadecimal: 0x0000 0x0100 Casas decimais: 0 255 Largura da coluna |
Bit 8 |
Hexadecimal: 0x0100 Casas decimais: 256 Uma coluna persistente. Zero significa uma coluna temporária. |
Bit 9 |
Hexadecimal: 0x0200 Decimal: 1023 Uma coluna localizável. Zero significa que a coluna não pode ser localizada. |
Bits 10 11 |
Hexadecimal: 0x0000 Decimal: 0 Inteiro longo Hexadecimal: 0x0400 Decimal: 1024 Inteiro curto Hexadecimal: 0x0800 Casas decimais: 2048 Objeto binário Hexadecimal: 0x0C00 Casas decimais: 3072 String |
Bit 12 |
Hexadecimal: 0x1000 Decimal: 4096 Coluna anulável. Zero significa que a coluna não é anulável. |
Bit 13 |
Hexadecimal: 0x2000 Decimal: 8192 Coluna de chave primária. Zero significa que esta coluna não é uma chave primária. |
bits 14 15 |
Hexadecimal: 0x4000 0x8000 Casas decimais: 16384 32768 Reservado |
Para obter um exemplo de script que demonstra a tabela _TransformView, consulte Exibir uma transformação.