Renames databases, tables, or dictionaries. Several entities can be renamed in a single query.
Note that the
RENAME query with several entities is non-atomic operation. To swap entities names atomically, use the EXCHANGE statement.
RENAME query is supported by the Atomic database engine only.
RENAME DATABASE|TABLE|DICTIONARY name TO new_name [,...] [ON CLUSTER cluster]
RENAME DATABASE atomic_database1 TO atomic_database2 [,...] [ON CLUSTER cluster]
Renames one or more tables.
Renaming tables is a light operation. If you pass a different database after
TO, the table will be moved to this database. However, the directories with databases must reside in the same file system. Otherwise, an error is returned.
If you rename multiple tables in one query, the operation is not atomic. It may be partially executed, and queries in other sessions may get
Table ... does not exist ... error.
RENAME TABLE [db1.]name1 TO [db2.]name2 [,...] [ON CLUSTER cluster]
RENAME TABLE table_A TO table_A_bak, table_B TO table_B_bak;
Renames one or several dictionaries. This query can be used to move dictionaries between databases.
RENAME DICTIONARY [db0.]dict_A TO [db1.]dict_B [,...] [ON CLUSTER cluster]