私はSQLite 3でPythonを使用しています。ユーザーはSQLクエリを入力し、テンプレート言語の結果を書式設定する必要があります。PythonのDB APIで.description()を使ってテーブル名とカラム名を取得できますか?
基本的には、DB APIカーソル(PEP 249)の記述を使用する必要がありますが、多くの場合、ユーザーは結合を行うため、列名とをテーブル名にする必要があります。
明らかな答え、つまりテーブル定義を読むことはできません。テーブルの多くは同じ列名を持っています。
私も... AVG(フィールド)のような集約関数のためのカラム/テーブル名にいくつかのインテリジェントな動作を必要とする
私が思い付くことができる唯一の解決策は、SQLパーサーを使用してSELECT文を分析することです(一息)が、私は本当に良いように見えるPythonのための任意のSQLパーサーを発見していない?
ドキュメンテーションや他の誰かが同じ問題を発見したわけではないので、何かが分からないことがありますか?
編集:問題は、selectステートメントがユーザーインターフェイスでユーザーによって提供されるSQL selectの結果を見つけることです。私はそれを支配していない。上で述べたように、テーブル定義を読むのは役に立ちません。