-3

SQL パラメーター化されたクエリ テキストを xml ファイルに保存することにしました。このプロジェクトでは、C# コード ( http://system.data.sqlite.org/ ) で SQLite を使用しますが、パラメータ化されたクエリがどれほど柔軟であるか、特に標準 SQL が最初であり、この DB エンジンについても、いくつかの基本的な情報参照がありません。変数はパラメーター化可能 (A = … の値) であることは間違いありませんが、テーブル名はそうではありませんが、列名については完全にはわかりません (mytable から xxx を選択します)。見つけてくれてありがとう。

4

1 に答える 1

0

ほとんどすべての SQL エンジンでは、SQLite も例外ではなく、テーブルと列の名前をパラメーター化することはできません。

これは、ほとんどの場合、パラメーター化されたクエリがプリコンパイルされており、プリコンパイルが機能するためには、SQL エンジンがクエリ プラン (どのテーブルをどの列を使用して結合し、どのインデックスを使用するか) を作成する必要があるためです。この段階でテーブル名と列名が不明な場合、事前コンパイルはできません。これが、(WHERE のような) 制約の値のみをパラメーター化できる理由です ( SQL エンジンのサポートに応じて?$1または構文を使用して)。:name

于 2013-06-24T08:33:20.133 に答える