tabella _TransformView
Si tratta di una tabella temporanea di sola lettura usata per visualizzare le trasformazioni con la modalità di visualizzazione di trasformazione. Questa tabella non viene mai salvata in modo permanente dal programma di installazione.
Per richiamare la modalità di visualizzazione della trasformazione, ottenere un handle e aprire il database di riferimento. Vedere Recupero di un handle di database. Chiamare MsiDatabaseApplyTransform con MSITRANSFORM_ERROR_VIEWTRANSFORM. Ciò impedisce l'applicazione della trasformazione al database e esegue il dump del contenuto della trasformazione nella tabella _TransformView. È possibile accedere ai dati nella tabella usando query SQL. Vedere Uso delle query.
La tabella _TransformView non viene cancellata quando viene applicata un'altra trasformazione. La tabella riflette l'effetto cumulativo delle applicazioni successive. Per visualizzare le trasformazioni separatamente, è necessario rilasciare la tabella.
La tabella _TransformView include le colonne seguenti.
Colonna | Tipo | Chiave | Nullable |
---|---|---|---|
Tabella | Identificatore | S | N |
Colonna | Text | S | N |
Riga | Text | S | S |
Dati | Text | N | S |
Corrente | Text | N | S |
Colonna
-
Tavolo
-
Nome di una tabella di database modificata.
-
Colonna
-
Nome di una colonna di tabella modificata o INSERT, DELETE, CREATE o DROP.
-
Riga
-
Elenco dei valori di chiave primaria separati dalle schede. I valori di chiave primaria Null sono rappresentati da un singolo carattere di spazio. Un valore Null in questa colonna indica una modifica dello schema.
-
Dati
-
Dati, nome di un flusso di dati o definizione di colonna.
-
Corrente
-
Valore corrente dal database di riferimento o colonna un numero.
Commenti
Il _TransformView viene mantenuto in memoria da un conteggio dei blocchi, che può essere rilasciato con il comando SQL seguente.
"ALTER TABLE _TransformView FREE".
È possibile accedere ai dati nella tabella usando query SQL. Il linguaggio SQL ha due divisioni principali: DDL (Data Definition Language) che viene usato per definire tutti gli oggetti in un database SQL e DML (Data Manipulation Language) usato per selezionare, inserire, aggiornare ed eliminare dati negli oggetti definiti tramite DDL.
Le operazioni di trasformazione DML (Data Manipulation Language) sono indicate di seguito. Il linguaggio DML (Data Manipulation Language) è le istruzioni in SQL che modificano, anziché definire i dati.
Operazione di trasformazione | Risultato SQL |
---|---|
Modificare i dati | {table} {column} {row} {data} {valore corrente} |
Inserimento di una riga | {table} "INSERT" {row} NULL NULL |
Elimina riga | {table} "DELETE" {row} NULL NULL |
Le operazioni di trasformazione DDL (Data Definition Language) sono indicate di seguito. Data Definition Language (DDL) sono le istruzioni in SQL che definiscono, anziché modificare i dati.
Operazione di trasformazione | Risultato SQL |
---|---|
Aggiungere una colonna | {table} {column} NULL {defn} {numero di colonna} |
Aggiungi tabella | {table} "CREATE" NULL NULL NULL |
Eliminare una tabella | {table} "DROP" NULL NULL NULL |
Quando l'applicazione di una trasformazione aggiunge questa tabella, il campo Dati riceve il testo che può essere interpretato come valore intero a 16 bit. Il valore descrive la colonna denominata nel campo Colonna. È possibile confrontare il valore intero con le costanti della tabella seguente per determinare la definizione della colonna modificata.
bit | Descrizione |
---|---|
Bit 0 7 |
Esadecimale: 0x0000 0x0100 Decimale: 0 255 Larghezza colonna |
Bit 8 |
Esadecimale: 0x0100 Decimale: 256 Colonna persistente. Zero indica una colonna temporanea. |
Bit 9 |
Esadecimale: 0x0200 Decimale: 1023 Colonna localizzabile. Zero indica che la colonna non può essere localizzata. |
Bit 10 11 |
Esadecimale: 0x0000 Decimal: 0 Long integer Esadecimale: 0x0400 Decimal: 1024 Intero breve Esadecimale: 0x0800 Decimal: 2048 Oggetto binario Esadecimale: 0x0C00 Decimal: 3072 string |
Bit 12 |
Esadecimale: 0x1000 Decimal: 4096 Colonna nullable. Zero significa che la colonna non è nullable. |
Bit 13 |
Esadecimale: 0x2000 Decimal: 8192 Colonna chiave primaria. Zero significa che questa colonna non è una chiave primaria. |
Bit 14 15 |
Esadecimale: 0x4000 0x8000 Decimal: 16384 32768 Riservato |
Per un esempio di script che illustra la tabella _TransformView, vedere Visualizzare una trasformazione.