Je souhaite implémenter une commande show foo
liée au moteur de base de données que nous souhaitons connecter à Calcite via l'adaptateur Calcite. Bien sûr, foo
est quelque chose de spécifique à ce moteur de base de données. J'essaie de déterminer à quel nœud distant il doit être mappé (entre autres détails). Donc, si quelqu'un a implémenté l'instruction "show" comme adaptateur Calcite et a quelques conseils à me donner, ce serait grandement apprécié.
Mon idée actuelle est de créer un nouveau type de table "foo" avec les colonnes pertinentes que la commande doit renvoyer, puis de mapper show foo
à l'équivalent :
select * from foo; ≪/pré>Bien sûr, cela se fait à l’aide de nœuds relationnels Calcite. Sur le backend, je sais vers quoi je dois le convertir.
Vous voudrez peut-être consultersqllinequi implémente quelque chose comme
show
的命令:!dbinfo
、!tables
、!schemas
et plus encore. Si vous regardezCommands.javavous verrez qu'elles sont implémentées via JDBC.À partir de là, cependant, vous pouvez découvrir le côté Calcite des choses dans les différentes classes de l'espace de nomsorg.apache.calcite.jdbc.