From 4a83e05ea75cd7b633679f7e3ec3c91cdf9481f6 Mon Sep 17 00:00:00 2001 From: Graham Lee Date: Mon, 10 Feb 2020 12:02:37 +0000 Subject: [PATCH] Turn javascript arrays into SQL lists --- lib/sqlite.core.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/sqlite.core.js b/lib/sqlite.core.js index 4acd6c25..70087465 100644 --- a/lib/sqlite.core.js +++ b/lib/sqlite.core.js @@ -489,7 +489,7 @@ SQLitePluginTransaction.prototype.executeSql = function(sql, values, success, er }; SQLitePluginTransaction.prototype.addStatement = function(sql, values, success, error) { - var j, len1, params, sqlStatement, t, v; + var j, len1, len2, params, sqlStatement, t, v, i, s; sqlStatement = typeof sql === 'string' ? sql : sql.toString(); params = []; if (!!values && values.constructor === Array) { @@ -501,6 +501,16 @@ SQLitePluginTransaction.prototype.addStatement = function(sql, values, success, } else if (t === 'boolean') { //Convert true -> 1 / false -> 0 params.push(~~v); + } else if (Array.isArray(v)) { + s = '('; + for (i = 0, len2 = v.length; len2 > 1 && i < len2 - 1; i++) { + s = s + v[i].toString() + ','; + } + if (len2 > 0) { + s = s + v[len2 - 1]; + } + s = s + ')'; + params.push(s); } else if (t !== 'function') { params.push(v.toString());