ClickHouse/docs/es/engines/table-engines/integrations/jdbc.md
Ivan Blinkov d91c97d15d
[docs] replace underscores with hyphens (#10606)
* Replace underscores with hyphens

* remove temporary code

* fix style check

* fix collapse
2020-04-30 21:19:18 +03:00

2.8 KiB

machine_translated machine_translated_rev toc_priority toc_title
true 3e185d24c9 34 JDBC

JDBC

Permite que ClickHouse se conecte a bases de datos externas a través de JDBC.

Para implementar la conexión JDBC, ClickHouse utiliza el programa independiente Sistema abierto. que debería ejecutarse como un demonio.

Este motor soporta el NULL tipo de datos.

Creación De Una Tabla

CREATE TABLE [IF NOT EXISTS] [db.]table_name
(
    columns list...
)
ENGINE = JDBC(dbms_uri, external_database, external_table)

Parámetros del motor

  • dbms_uri — URI of an external DBMS.

    Formato: jdbc:<driver_name>://<host_name>:<port>/?user=<username>&password=<password>. Ejemplo para MySQL: jdbc:mysql://localhost:3306/?user=root&password=root.

  • external_database — Database in an external DBMS.

  • external_table — Name of the table in external_database.

Ejemplo De Uso

Crear una tabla en el servidor MySQL conectándose directamente con su cliente de consola:

mysql> CREATE TABLE `test`.`test` (
    ->   `int_id` INT NOT NULL AUTO_INCREMENT,
    ->   `int_nullable` INT NULL DEFAULT NULL,
    ->   `float` FLOAT NOT NULL,
    ->   `float_nullable` FLOAT NULL DEFAULT NULL,
    ->   PRIMARY KEY (`int_id`));
Query OK, 0 rows affected (0,09 sec)

mysql> insert into test (`int_id`, `float`) VALUES (1,2);
Query OK, 1 row affected (0,00 sec)

mysql> select * from test;
+------+----------+-----+----------+
| int_id | int_nullable | float | float_nullable |
+------+----------+-----+----------+
|      1 |         NULL |     2 |           NULL |
+------+----------+-----+----------+
1 row in set (0,00 sec)

Creación de una tabla en el servidor ClickHouse y selección de datos de ella:

CREATE TABLE jdbc_table
(
    `int_id` Int32,
    `int_nullable` Nullable(Int32),
    `float` Float32,
    `float_nullable` Nullable(Float32)
)
ENGINE JDBC('jdbc:mysql://localhost:3306/?user=root&password=root', 'test', 'test')
SELECT *
FROM jdbc_table
┌─int_id─┬─int_nullable─┬─float─┬─float_nullable─┐
│      1 │         ᴺᵁᴸᴸ │     2 │           ᴺᵁᴸᴸ │
└────────┴──────────────┴───────┴────────────────┘

Ver también

Artículo Original