Как подключить готовую SQLite базу данных в JavaScript приложении

Проблема с подключением существующей SQLite базы

Работаю над мобильным приложением и столкнулся с проблемой. У меня есть готовая база данных SQLite с таблицами и данными, но когда пытаюсь к ней подключиться через JavaScript, получаю ошибку что таблица не существует.

var connection;
var dbName = 'userStorage';
var dbVersion = '2.0';
var dbTitle = 'User Storage Database';
var dbLimit = 32768;

connection = openDatabase(dbName, dbVersion, dbTitle, dbLimit);

connection.transaction(function(tx) {
    tx.executeSql('SELECT * FROM Customers;', [],
    function(tx, results) {
        if (results != null && results.rows != null) {
            for (var j = 0; j < results.rows.length; j++) {
                var record = results.rows.item(j);
                console.log(record.CustomerID);
            }
        }
    }, handleError);
}, handleError, successCallback);

Похоже что вместо открытия моего файла создается новая пустая база. Как правильно открыть уже существующий файл базы данных со всеми таблицами и записями?

У меня была такая же проблема с гибридным приложением. Если база готовая, сначала скопируй .db файл в нужную папку на устройстве. Я использовал плагин File - копировал из www/assets в постоянное хранилище, потом открывал базу по полному пути. Еще проверь версию - если не совпадает, база пересоздается.

Проблема в том, что openDatabase() всегда создает новую базу, если её нет. Для готового файла лучше взять cordova-sqlite-storage плагин - там есть параметр createFromLocation, который копирует готовую базу из assets. Или можешь положить db файл в нужную папку через файловую систему, а потом открыть его. Только следи, чтобы путь совпадал с тем, что ожидает openDatabase.