Comando di tabella rinomina
Modifica il nome di una tabella esistente.
Il .rename tables
comando modifica il nome di una serie di tabelle nel database come singola transazione.
Autorizzazioni
Per eseguire questo comando, è necessario disporre almeno delle autorizzazioni table Amministrazione.
Sintassi
.rename
table
Oldnameto
Newname
.rename
tables
Newname=
OldName [] [ifexists
,
...]
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Tipo | Obbligatoria | Descrizione |
---|---|---|---|
OldName | string |
✔️ | Nome di una tabella esistente. Viene generato un errore e l'intero comando ha esito negativo se OldName non assegna un nome a una tabella esistente, a meno che ifexists non venga specificato. |
Newname | string |
✔️ | Nuovo nome per la tabella da chiamare OldName. |
ifexists |
string |
Se specificato, il comando gestirà lo scenario in cui la tabella non esiste. Invece di non riuscire, procederà senza tentare di rinominare la tabella che non esiste. |
Osservazioni:
Questo comando opera solo sulle tabelle del database nell'ambito. I nomi di tabella non possono essere qualificati con nomi di cluster o database.
Questo comando non crea nuove tabelle né rimuove le tabelle esistenti. La trasformazione descritta dal comando deve essere tale che il numero di tabelle nel database non cambia.
Il comando supporta lo scambio di nomi di tabella o di permutazioni più complesse, purché siano conformi alle regole precedenti. Ad esempio, inserire dati in più tabelle di staging e quindi scambiarle con tabelle esistenti in una singola transazione.
Esempio
Si supponga che un database con le tabelle seguenti: A
, B
, C
e A_TEMP
.
Il comando seguente scambia A
e A_TEMP
(in modo che la A_TEMP
tabella venga ora chiamata A
e l'altro modo in cui si sposta), rinomina B
in NEWB
e mantieni C
come è.
.rename tables A=A_TEMP, NEWB=B, A_TEMP=A
Sequenza di comandi seguente:
- Crea una nuova tabella temporanea
- Sostituisce una tabella esistente o non esistente con la nuova tabella
// Drop the temporary table if it exists
.drop table TempTable ifexists
// Create a new table
.set TempTable <| ...
// Swap the two tables
.rename tables TempTable=Table ifexists, Table=TempTable
// Drop the temporary table (which used to be Table) if it exists
.drop table TempTable ifexists
Rinominare la tabella di origine di una vista materializzata
Se la tabella rinominata è la tabella di origine di una visualizzazione materializzata, è possibile specificare la proprietà seguente come parte del .rename
comando:
.rename
table
Oldnameto
Newnamewith (updateMaterializedViews=true)
La tabella verrà rinominata e tutte le visualizzazioni materializzate che fanno riferimento a OldName verranno aggiornate per puntare a NewName, in modo transazionale.
Nota
Il comando funzionerà solo se la tabella di origine viene fatto riferimento direttamente nella query di visualizzazione materializzata. Se la tabella di origine viene fatto riferimento a una funzione archiviata richiamata dalla query di visualizzazione, il comando avrà esito negativo, poiché il comando non può aggiornare la funzione archiviata.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per