Sdílet prostřednictvím


Příkaz .rename table

Platí pro: ✅Microsoft FabricAzure Data Explorer

Změní název existující tabulky.

Příkaz .rename tables změní název několika tabulek v databázi jako jednu transakci.

Oprávnění

Ke spuštění tohoto příkazu musíte mít alespoň oprávnění správce tabulky.

Syntaxe

.renametable OldName NewName to

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

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
OldName string ✔️ Název existující tabulky. Vyvolá se chyba a celý příkaz selže, pokud OldName nenázví existující tabulku, pokud ifexists není zadán.
NewName string ✔️ Nový název tabulky, která se používá k pojmenování OldName.
ifexists string Pokud je zadáno, příkaz zpracuje scénář, ve kterém tabulka neexistuje. Místo selhání bude pokračovat bez nutnosti přejmenovat tabulku, která neexistuje.

Poznámky

Tento příkaz pracuje pouze s tabulkami databáze v oboru.

Názvy tabulek nelze kvalifikovat pomocí názvů clusteru nebo databáze.

Názvy tabulek se například nedají kvalifikovat s názvy databází.

Tento příkaz nevytvoří nové tabulky ani neodebere existující tabulky. Transformace popsaná příkazem musí být taková, aby se počet tabulek v databázi nezměnil.

Příkaz podporuje prohození názvů tabulek nebo složitějších permutací, pokud dodržují výše uvedená pravidla. Například ingestování dat do několika pracovních tabulek a jejich následné prohození s existujícími tabulkami v jedné transakci.

Příklady

Představte si databázi s následujícími tabulkami: A, BC, a A_TEMP. Následující příkaz se prohodí A a A_TEMP (aby A_TEMP se teď tabulka volala Aa naopak), přejmenovala B na NEWBa zachovala C tak, jak je.

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

Následující posloupnost příkazů:

  1. Vytvoří novou dočasnou tabulku.
  2. Nahradí existující nebo neexistující tabulku novou tabulkou.
// 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

Přejmenování zdrojové tabulky materializovaného zobrazení

Pokud je přejmenovaná tabulka zdrojovou tabulkou materializovaného zobrazení, můžete jako součást .rename příkazu zadat následující vlastnost:

.renametable OldName NewName to with (updateMaterializedViews=true)

Tabulka se přejmenuje a všechna materializovaná zobrazení odkazující na OldName budou aktualizována tak, aby odkazovala na NewName, a to transakčním způsobem.

Poznámka:

Příkaz bude fungovat pouze v případě, že zdrojová tabulka odkazuje přímo v dotazu materializovaného zobrazení. Pokud zdrojová tabulka odkazuje z uložené funkce vyvolané dotazem zobrazení, příkaz selže, protože příkaz nemůže aktualizovat uloženou funkci.