.rename table command

Egy meglévő tábla nevének módosítása.

A .rename tables parancs egyetlen tranzakcióként módosítja az adatbázisban lévő táblák nevét.

Engedélyek

A parancs futtatásához legalább Table Rendszergazda engedéllyel kell rendelkeznie.

Syntax

.renametableOldNametoNewName

.renametablesNewName=OldName [ifexists] [, ...]

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
OldName string ✔️ Egy meglévő tábla neve. Hiba lép fel, és a teljes parancs meghiúsul, ha az OldName nem nevez el egy meglévő táblát, hacsak ifexists nincs megadva.
NewName string ✔️ A tábla új neve, amelyet korábban OldName-nek hívtak.
ifexists string Ha meg van adva, a parancs kezeli azt a forgatókönyvet, amelyben a tábla nem létezik. A sikertelenség helyett a nem létező tábla átnevezése nélkül folytatja a műveletet.

Megjegyzések

Ez a parancs csak az adatbázis tábláiban működik a hatókörben. A táblanevek nem minősíthetők fürt- vagy adatbázisnévvel.

Ez a parancs nem hoz létre új táblákat, és a meglévő táblákat sem távolítja el. A parancs által leírt átalakításnak olyannak kell lennie, hogy az adatbázis tábláinak száma ne változzon.

A parancs támogatja a táblanevek vagy összetettebb permutációk felcserélését mindaddig, amíg megfelelnek a fenti szabályoknak. Adatok betöltése például több előkészítési táblába, majd felcserélés egy tranzakcióban meglévő táblákkal.

Példák

Képzeljen el egy adatbázist a következő táblázatokkal: A, B, Cés A_TEMP. A következő parancs felcseréli A a és A_TEMP a parancsot (így a A_TEMP tábla neve , Aés fordítva), nevezze át B a következőre: NEWB, és tartsa meg C az állapotot.

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

A következő parancsok sorozata:

  1. Új ideiglenes tábla létrehozása
  2. Meglévő vagy nem létező tábla lecserélése az új táblára
// 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

Materializált nézet forrástáblájának átnevezése

Ha az átnevezett tábla egy materializált nézet forrástáblája, a parancs részeként .rename a következő tulajdonságot adhatja meg:

.renametableOldNametoNewNamewith (updateMaterializedViews=true)

A rendszer átnevezi a táblát, és az OldName névre hivatkozó összes materializált nézet frissül, hogy tranzakciós módon a NewName névre mutasson.

Megjegyzés

A parancs csak akkor működik, ha a forrástáblára közvetlenül hivatkozik a materializált nézet lekérdezésében. Ha a forrástáblára egy, a nézet lekérdezése által meghívott tárolt függvény hivatkozik, a parancs sikertelen lesz, mivel a parancs nem tudja frissíteni a tárolt függvényt.