如何处理具有很多参数的参数化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实现。