如何处理具有很多参数的参数化SQLite查询Phonegap
问题描述:
我想知道是否有人可以建议我一个更智能的方式来处理SQLite查询与很多参数(最多20个字段)。如何处理具有很多参数的参数化SQLite查询Phonegap
现在,我编码的东西就像下面的例子。如果我按照错误的顺序放置参数,这会让人头疼。我认为查询应该是一件需要仔细构建的事情。如果你这么说,我很好。但是如果有人(或我)修改了查询(添加/删除)参数,则需要一段时间仔细检查参数顺序。
tx.executeSql('INSERT INTO some_table
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', [a, b, c, ...., z], , function(tx, res) {
/* Some code here */
}
可能有人建议或推荐我来处理这些参数,使其更具可读性,并使其易于维护的代码的实际方法是什么?
答
SQLite允许different parameter placeholders;与:
,@
或$
前缀,参数可以有一个名称。
这将有可能编写自己的包装器executeSql
该检查SQL字符串,提取参数名称,并构建一个参数数组与同名变量的值:
myExecuteSQL('INSERT INTO MyTable VALUES(:a, :b, :c)')
的Tcl SQLite包装这样做。 但是,我不知道任何JavaScript实现。