Freigeben über


.rename table-Befehl

Gilt für: ✅Microsoft Fabric✅Azure Data Explorer

Ändert den Namen einer vorhandenen Tabelle.

Der .rename tables Befehl ändert den Namen einer Reihe von Tabellen in der Datenbank als einzelne Transaktion.

Berechtigungen

Sie müssen mindestens über Die Berechtigungen des Tabellenadministrators verfügen, um diesen Befehl auszuführen.

Syntax

.renametable OldName NewName to

.renametables NewName OldName = [ifexists] [, ...]

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Type Erforderlich Beschreibung
OldName string ✔️ Der Name einer vorhandenen Tabelle. Ein Fehler wird ausgelöst, und der gesamte Befehl schlägt fehl, wenn OldName keine vorhandene Tabelle benannt, es sei denn ifexists , es wird angegeben.
NewName string ✔️ Der neue Name für die Tabelle, die als OldName bezeichnet wurde.
ifexists string Wenn angegeben, behandelt der Befehl das Szenario, in dem die Tabelle nicht vorhanden ist. Anstatt fehlzuschlagen, wird sie fortgesetzt, ohne die Tabelle umzubenennen, die nicht vorhanden ist.

Anmerkungen

Dieser Befehl wird nur für Tabellen der Datenbank im Bereich ausgeführt.

Tabellennamen können nicht mit Cluster- oder Datenbanknamen qualifiziert werden.

Tabellennamen können z. B. nicht mit Datenbanknamen qualifiziert werden.

Mit diesem Befehl werden weder neue Tabellen erstellt noch vorhandene Tabellen entfernt. Die vom Befehl beschriebene Transformation muss so sein, dass sich die Anzahl der Tabellen in der Datenbank nicht ändert.

Der Befehl unterstützt das Austauschen von Tabellennamen oder komplexeren Permutationen, solange sie den oben genannten Regeln entsprechen. Nehmen Sie beispielsweise Daten in mehrere Stagingtabellen ein, und tauschen Sie sie dann mit vorhandenen Tabellen in einer einzelnen Transaktion aus.

Beispiele

Stellen Sie sich eine Datenbank mit den folgenden Tabellen vor: A, , B, Cund A_TEMP. Der folgende Befehl wechselt und A A_TEMP (sodass die A_TEMP Tabelle jetzt aufgerufen Awird, und umgekehrt), benennen Sie sie in B NEWB" und beibehalten C " um.

.rename tables A=A_TEMP, NEWB=B, A_TEMP=A

Die folgende Abfolge von Befehlen:

  1. Erstellt eine neue temporäre Tabelle
  2. Ersetzt eine vorhandene oder nicht vorhandene Tabelle durch die neue Tabelle.
// 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

Umbenennen der Quelltabelle einer materialisierten Ansicht

Wenn die umbenannte Tabelle die Quelltabelle einer materialisierten Ansicht ist, können Sie die folgende Eigenschaft als Teil des .rename Befehls angeben:

.renametable OldName NewName to with (updateMaterializedViews=true)

Die Tabelle wird umbenannt, und alle materialisierten Ansichten, die auf OldName verweisen, werden aktualisiert, um auf NewName zu verweisen.

Hinweis

Der Befehl funktioniert nur, wenn auf die Quelltabelle direkt in der materialisierten Ansichtsabfrage verwiesen wird. Wenn auf die Quelltabelle von einer gespeicherten Funktion verwiesen wird, die von der Ansichtsabfrage aufgerufen wird, schlägt der Befehl fehl, da der Befehl die gespeicherte Funktion nicht aktualisieren kann.