1

多くのパラメーター (最大 20 以上のフィールド) を使用して SQLite クエリを処理するためのよりスマートな方法を誰かが提案してくれるかどうか疑問に思っています。

現在、私は以下の例のようなものをコーディングしています。パラメータを間違った順序で配置すると頭痛の種になります。クエリは、慎重に構築する必要がある 1 回限りのものであるべきだと思います。そう言ってくれれば大丈夫。しかし、誰か (または私) がクエリ パラメータを変更 (追加/削除) した場合、パラメータの順序を何度も注意深く確認するのに時間がかかるはずです。

tx.executeSql('INSERT INTO some_table 
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', [a, b, c, ...., z], , function(tx, res) {
/* Some code here */
}

これらのパラメーターを処理して読みやすくし、コードの保守を容易にする実用的な方法を提案または推奨してもらえますか?

4

1 に答える 1

0

SQLiteではさまざまなパラメータプレースホルダーを使用できます; :、、、@または$プレフィックスを付けて、パラメーターに名前を付けることができます。

executeSqlSQL文字列を調べ、パラメーター名を抽出し、同じ名前の変数の値を使用してパラメーター配列を作成する独自のラッパーを作成することは可能です。

myExecuteSQL('INSERT INTO MyTable VALUES(:a, :b, :c)')

TclSQLiteラッパーはこの方法でそれを行います。ただし、JavaScriptの実装については知りません。

于 2013-03-09T19:46:58.847 に答える