Příkaz .rename table

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

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

Oprávnění

Ke spuštění tohoto příkazu musíte mít aspoň oprávnění Správa tabulky.

Syntax

.renametableStarý názevtoNewname

.renametablesNewname=OldName [ifexists] [, ...]

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

Parametry

Název Typ Vyžadováno Popis
OldName string ✔️ Název existující tabulky. Dojde k chybě a celý příkaz selže, pokud název OldName nepojmenuje existující tabulku, pokud ifexists není zadaný.
Newname string ✔️ Nový název tabulky, která se dříve jmenovala OldName.
ifexists string Pokud je tato hodnota zadána, příkaz zpracuje scénář, ve kterém tabulka neexistuje. Místo toho, aby došlo k selhání, bude pokračovat bez pokusu o přejmenování tabulky, která neexistuje.

Poznámky

Tento příkaz pracuje pouze s tabulkami databáze v oboru. Názvy tabulek nelze kvalifikovat pomocí názvů clusterů nebo 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ší permutace, pokud dodržují výše uvedená pravidla. Například ingestujte data do více pracovních tabulek a pak je prohodíte 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 prohodí A a (aby A_TEMP se teď tabulka jmenovala A, a naopak), přejmenuje B na NEWBa ponechá se tak CA_TEMP , 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řejmenovává tabulka zdrojovou tabulkou materializovaného zobrazení, můžete jako součást .rename příkazu zadat následující vlastnost:

.renametableStarý názevtoNewnamewith (updateMaterializedViews=true)

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

Poznámka

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