ATTACH, el servidor sabrá que existen la tabla, el diccionario o la base de datos.
Si una tabla se desvinculó previamente (consulta DETACH), es decir, si se conoce su estructura, puede usar la forma abreviada sin definirla.
Adjuntar una tabla existente
SintaxisATTACH, que simplemente ejecuta al arrancar (con la excepción de algunas tablas del sistema, que se crean explícitamente en el servidor).
Si la tabla se desvinculó de forma permanente, no volverá a adjuntarse al iniciar el servidor, por lo que debe usar la consulta ATTACH explícitamente.
Crear una nueva tabla y adjuntar los datos
Con una ruta especificada para los datos de la tabla
La consulta crea una tabla nueva con la estructura indicada y adjunta los datos de la tabla desde el directorio especificado enuser_files.
El usuario necesita los privilegios READ ON FILE y WRITE ON FILE para esta consulta: lee el directorio y lo mueve a la ruta de datos de la nueva tabla.
Sintaxis
Query
Response
Con un UUID de tabla especificado
Esta consulta crea una tabla nueva con la estructura proporcionada y adjunta los datos de la tabla con el UUID especificado. Es compatible con el motor de base de datos Atomic. SintaxisAdjuntar una tabla MergeTree como ReplicatedMergeTree
Permite adjuntar una tabla MergeTree no replicada como ReplicatedMergeTree. La tabla ReplicatedMergeTree se creará con los valores de los ajustesdefault_replica_path y default_replica_name. También es posible adjuntar una tabla replicada como una tabla MergeTree normal.
La conversión es compatible con tablas en bases de datos Atomic y Ordinary. Una tabla en una base de datos Ordinary no tiene UUID, por lo que la conversión genera un UUID, expande default_replica_path con él una sola vez y almacena la ruta resultante de forma explícita en los argumentos del motor de la tabla convertida. Para agregar más réplicas de dicha tabla, especifique esta ruta explícitamente en el primer argumento del motor ReplicatedMergeTree; puede encontrarla en la columna zookeeper_path de system.replicas. Dado que la ruta almacenada ya no contiene la macro {uuid}, el znode propio de dicha tabla se localiza en cada carga comparando de nuevo la ruta con default_replica_path; la conversión se rechaza cuando no es posible volver a hacer coincidir esa plantilla con la ruta (por ejemplo, cuando expande {uuid} más de una vez). {uuid} en default_replica_name no es compatible con ninguna conversión.
Tenga en cuenta que los datos de la tabla en ZooKeeper no se ven afectados por esta consulta. Esto significa que debe agregar metadatos en ZooKeeper con SYSTEM RESTORE REPLICA o eliminarlos con SYSTEM DROP REPLICA ... FROM ZKPATH ... después de adjuntarla.
Si está intentando agregar una réplica a una tabla ReplicatedMergeTree existente, tenga en cuenta que todos los datos locales de la tabla MergeTree convertida quedarán desvinculados.
Sintaxis
Query
Response
Query