sqlite - 将数组参数传递给 SQLiteObject.executeSql()

标签 sqlite cordova typescript ionic-framework

我正在尝试将数组参数传递给 ionic 中 SQLiteObject 的函数 executeSql,以使其成为我的 sql 查询的值。

例如

var sqlQuery: string = "SELECT * FROM Property WHERE ID IN (?) AND Status = ?"
var ids: number[] = [123, 321, 456];

我想在这里传递它,

var db: SQLiteObject
db.executeSql(sqlQuery, [ids, 0])

所以基本上我想将 ids 的所有值插入到 IN 运算符中,并将 0 插入到 Status 中。但我认为 SQL 对其的解释不同。

我尝试将其作为字符串传递 db.executeSql(sqlQuery, [ids.toString(), 0]) 以删除不必要的字符等。但它仍然没有返回任何东西。

注意 我知道我需要它来附上 promise 或其他东西,但我只是将它切片并总结以删除不必要的代码。谢谢。

最佳答案

找遍了还是找不到确切的答案,我只是通过这种方法发明了一种变通方法。

var ids: number[] = [123, 321, 456];
var sqlQuery: string = "SELECT * FROM Property WHERE ID IN (" + ids.toString() + ") AND Status = ?";

并将其传递给executeSql函数

var db: SQLiteObject
db.executeSql(sqlQuery, [0]);

这只是一个解决方法。我仍然会等待更好的解决方案。谢谢!

关于sqlite - 将数组参数传递给 SQLiteObject.executeSql(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48498367/

相关文章:

Angular 6 - 函数未定义

typescript - 如何在 TypeScript React-Native 项目中导入 Markdown 文件?

SQLITE,创建一个临时表然后从中选择

android - 当我使用 Windows 文件管理器时,Sqlite 数据库在 SD 卡中不可见

python - 使用 Python 和 SQLite 验证 SQL 查询语法

android - PhoneGap 中的视频缩略图?

angular - 类型 'coords' 上不存在属性 'MouseEvent'。在 Angular2-google-maps 标记事件中

javascript - JS 函数统计 SQLite 表中的行数

Cordova 和 PhoneGap 有不同的 config.xml 示例

Android 上的 Javascript onKeyPress 键代码始终为 0