commande .rename table
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 d’au moins des autorisations table Administration pour exécuter cette commande.
Syntax
.rename
table
OldNameto
Newname
.rename
tables
Newname=
OldName [ifexists
] [,
...]
Découvrez les conventions de syntaxe.
Paramètres
Nom | Type | Obligatoire | Description |
---|---|---|---|
OldName | string |
✔️ | Nom d’une table existante. Une erreur est générée et l’ensemble de la commande échoue si OldName ne nomme pas une table existante, sauf si ifexists est spécifié. |
Newname | string |
✔️ | Nouveau nom de la table qui s’appelait auparavant 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, elle se poursuit sans tenter de renommer la table qui n’existe pas. |
Remarques
Cette commande fonctionne sur les tables de la base de données dans l’étendue uniquement. Les noms de table ne peuvent pas être qualifiés avec des noms de cluster ou de base de données.
Cette commande ne crée pas de tables et ne supprime pas les tables existantes. La transformation décrite par la commande doit être telle que le nombre de tables dans la base de données ne change pas.
La commande prend en charge l’échange de 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 tables suivantes : A
, B
, C
et A_TEMP
.
La commande suivante permute A
et A_TEMP
(de sorte que la A_TEMP
table soit maintenant appelée A
, et l’inverse), renommez B
NEWB
en et conservez C
l’objet tel quelle.
.rename tables A=A_TEMP, NEWB=B, A_TEMP=A
La séquence de commandes suivante :
- Crée une table temporaire
- 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 en cours de renommage 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 :
.rename
table
OldNameto
Newnamewith (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.
Notes
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 view, la commande échoue, car la commande ne peut pas mettre à jour la fonction stockée.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour