Calcite アダプター経由で Calcite に接続するデータベース エンジンに関連する show foo
コマンドを実装したいと考えています。もちろん、foo
はそのデータベース エンジンに固有のものです。 (他の詳細の中で)どのrelnodeにマップする必要があるかを理解しようとしています。したがって、誰かが「show」ステートメントを Calcite アダプターとして実装し、私にいくつかのヒントを持っている場合は、非常に感謝します。
私の現在のアイデアは、コマンドが返す必要がある関連する列を含む新しい「foo」テーブル タイプを作成し、show foo
を同等のものにマップすることです。
select * from foo;
もちろん、これは Calcite relnode を使用して行われます。バックエンドでは、何に変換する必要があるかがわかっています。
sqllineをチェックしてみてください。これは、
show
に似たコマンドを実装しています:!dbinfo
、!tables
、!スキーマ
など。Commands.javaを見ると、それらが JDBC 経由で実装されていることがわかります。ただし、そこから、org.apache.calcite.jdbc名前空間のさまざまなクラスにおける Calcite の側面を知ることができます。