Partager via


commande .rename table

S’applique à : ✅Microsoft Fabric✅Azure Data Explorer

Modifie le nom d’une table existante.

La .rename tables commande modifie le nom d’un certain nombre de tables dans la base de données en tant que transaction unique.

autorisations

Vous devez disposer au moins des autorisations d’administrateur de table pour exécuter cette commande.

Syntaxe

.renametable OldName NewName to

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

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
OldName string ✔️ Nom d’une table existante. Une erreur est générée et la commande entière échoue si OldName ne nomme pas de table existante, sauf indication ifexists contraire.
NewName string ✔️ Nouveau nom de la table qui était appelée OldName.
ifexists string Si elle est spécifiée, la commande gère le scénario où la table n’existe pas. Au lieu d’échouer, il se poursuit sans tenter de renommer la table qui n’existe pas.

Remarques

Cette commande fonctionne uniquement sur les tables de la base de données dans l’étendue.

Les noms de tables ne peuvent pas être qualifiés avec des noms de cluster ou de base de données.

Les noms de table ne peuvent pas être qualifiés, par exemple, avec des noms de base de données.

Cette commande ne crée pas de tables, ni ne supprime-t-elle les tables existantes. La transformation décrite par la commande doit être telle que le nombre de tables de la base de données ne change pas.

La commande prend en charge l’échange des noms de tables, ou des permutations plus complexes, tant qu’elles respectent les règles ci-dessus. Par exemple, ingérer des données dans plusieurs tables intermédiaires, puis les échanger avec des tables existantes dans une seule transaction.

Exemples

Imaginez une base de données avec les tableaux suivants : A, B, Cet A_TEMP. La commande suivante permutera A et A_TEMP (de sorte que la A_TEMP table sera maintenant appelée A, et l’autre chemin autour), renommez NEWBB - et conservez C en l’emplacement tel quel.

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

Séquence de commandes suivante :

  1. Crée une table temporaire
  2. Remplace une table existante ou inexistante par la nouvelle table
// 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

Renommer la table source d’une vue matérialisée

Si la table renommée est la table source d’une vue matérialisée, vous pouvez spécifier la propriété suivante dans le cadre de la .rename commande :

.renametable OldName NewName to with (updateMaterializedViews=true)

La table sera renommée et toutes les vues matérialisées faisant référence à OldName seront mises à jour pour pointer vers NewName de manière transactionnelle.

Remarque

La commande fonctionne uniquement si la table source est référencée directement dans la requête de vue matérialisée. Si la table source est référencée à partir d’une fonction stockée appelée par la requête d’affichage, la commande échoue, car la commande ne peut pas mettre à jour la fonction stockée.