RENAME
RENAME
데이터베이스, 테이블 또는 딕셔너리의 이름을 바꿔요. 단일 쿼리에서 여러 엔티티의 이름을 바꿀 수 있어요.
여러 엔티티가 있는 RENAME 쿼리는 원자적이지 않은 연산이라는 점에 유의하세요. 엔티티 이름을 원자적으로 교환하려면 EXCHANGE 문을 사용하세요.
출처: 문서
본문
Syntax
RENAME [DATABASE|TABLE|DICTIONARY] name TO new_name [,...] [ON CLUSTER cluster]
RENAME DATABASE
데이터베이스의 이름을 바꿔요.
Syntax
RENAME DATABASE atomic_database1 TO atomic_database2 [,...] [ON CLUSTER cluster]
RENAME TABLE
하나 이상의 테이블 이름을 바꿔요.
테이블 이름 바꾸기는 가벼운 연산이에요. TO 뒤에 다른 데이터베이스를 전달하면 테이블이 그 데이터베이스로 이동합니다. 그러나 데이터베이스가 있는 디렉터리는 같은 파일 시스템에 있어야 해요. 그렇지 않으면 오류가 반환됩니다.
한 쿼리에서 여러 테이블의 이름을 바꾸면 연산이 원자적이지 않습니다. 부분적으로 실행될 수 있고, 다른 세션의 쿼리는 Table ... does not exist ... 오류를 받을 수 있어요.
Syntax
RENAME TABLE [db1.]name1 TO [db2.]name2 [,...] [ON CLUSTER cluster]
Example
RENAME TABLE table_A TO table_A_bak, table_B TO table_B_bak;
그리고 더 간단한 sql을 사용할 수 있어요.
RENAME table_A TO table_A_bak, table_B TO table_B_bak;
RENAME DICTIONARY
하나 또는 여러 딕셔너리의 이름을 바꿔요. 이 쿼리는 딕셔너리를 데이터베이스 간에 이동하는 데 사용할 수 있어요.
Syntax
RENAME DICTIONARY [db0.]dict_A TO [db1.]dict_B [,...] [ON CLUSTER cluster]
See Also