Passer au contenu principal
Vous pouvez utiliser cette méthode pour vous connecter à n’importe quelle base de données disposant d’un pilote ODBC. Exemple de paramètres :

Champs des paramètres :
ParamètreDescription
dbNom de la base de données. Omettez-le si le nom de la base de données est défini dans les paramètres de <connection_string>.
tableNom de la table et du schéma, s’il existe.
connection_stringChaîne de connexion.
invalidate_queryRequête permettant de vérifier l’état du dictionnaire. Facultatif. Pour en savoir plus, consultez la section Refreshing dictionary data using LIFETIME.
background_reconnectSe reconnecte à la réplique en arrière-plan si la connexion échoue. Facultatif.
queryRequête personnalisée. Facultatif.
Les champs table et query ne peuvent pas être utilisés ensemble. De plus, l’un des deux champs table ou query doit obligatoirement être déclaré.
ClickHouse reçoit les caractères de guillemet du pilote ODBC et place tous les paramètres entre guillemets dans les requêtes envoyées au pilote ; il est donc nécessaire de définir le nom de la table en respectant sa casse dans la base de données. Si vous rencontrez des problèmes d’encodage lors de l’utilisation d’Oracle, consultez l’article correspondant de la FAQ.

Vulnérabilité connue de la fonctionnalité des dictionnaires ODBC

Lors de la connexion à la base de données via le pilote ODBC, le paramètre de connexion Servername peut être remplacé. Dans ce cas, les valeurs de USERNAME et PASSWORD de odbc.ini sont envoyées au serveur distant et peuvent être compromises.
Exemple d’utilisation non sécurisée Configurons unixODBC pour PostgreSQL. Contenu de /etc/odbc.ini :
Si vous exécutez ensuite une requête telle que
Le pilote ODBC enverra les valeurs de USERNAME et PASSWORD contenues dans odbc.ini à some-server.com.

Exemple de connexion à PostgreSQL

Système d’exploitation Ubuntu. Installation de unixODBC et du pilote ODBC pour PostgreSQL :
Configuration de /etc/odbc.ini (ou ~/.odbc.ini si vous êtes connecté avec l’utilisateur qui exécute ClickHouse) :
La configuration du dictionnaire dans ClickHouse :

Vous devrez peut-être modifier odbc.ini afin d’indiquer le chemin complet vers la bibliothèque avec le pilote DRIVER=/usr/local/lib/psqlodbcw.so.

Exemple de connexion à MS SQL Server

Sous Ubuntu. Installation du pilote ODBC pour la connexion à MS SQL :
Configuration du driver :
Remarques :
  • pour déterminer la plus ancienne version de TDS prise en charge par une version donnée de SQL Server, consultez la documentation du produit ou reportez-vous à MS-TDS Product Behavior
Configuration du dictionnaire dans ClickHouse :
Dernière modification le 2 juillet 2026