odbc テーブル関数
ODBCを介して接続されたテーブルを返します。
パラメータ:
connection_settings
—odbc.ini
ファイル内の接続設定セクションの名前。external_database
— 外部DBMS内のデータベースの名前。external_table
—external_database
内のテーブルの名前。
ODBC接続を安全に実装するために、ClickHouseは別のプログラム clickhouse-odbc-bridge
を使用します。ODBCドライバが直接 clickhouse-server
から読み込まれると、ドライバの問題によりClickHouseサーバがクラッシュすることがあります。ClickHouseは必要に応じて自動的に clickhouse-odbc-bridge
を起動します。ODBCブリッジプログラムは clickhouse-server
と同じパッケージからインストールされます。
外部テーブルからの NULL
値を持つフィールドは、基本データ型のデフォルト値に変換されます。たとえば、リモートMySQLテーブルのフィールドが INT NULL
型の場合、ClickHouseの Int32
データ型のデフォルト値である0に変換されます。
使用例
ODBCを介してローカルMySQLインストールからデータを取得する
この例は、Ubuntu Linux 18.04およびMySQLサーバ5.7で確認されています。
unixODBCおよびMySQL Connectorがインストールされていることを確認してください。
デフォルトでは(パッケージからインストールされた場合)、ClickHouseはユーザー clickhouse
として起動します。したがって、このユーザーをMySQLサーバで作成し、構成する必要があります。
次に、/etc/odbc.ini
で接続を構成します。
unixODBCインストールから isql
ユーティリティを使用して接続を確認できます。
MySQLのテーブル:
ClickHouseでMySQLテーブルからデータを取得する: