我正在尝试使用JSON数组填充phonegap sqlite数据库,获取JSON的Web服务正在运行并且数据加载得很好但是当我尝试将其插入到我的表中时它一直给我一个undefined
sql错误.
这是我的代码:
function populateDB(tx) { //Setup database table tx.executeSql('DROP TABLE IF EXISTS Profiles'); tx.executeSql('CREATE TABLE IF NOT EXISTS Profiles (id unique, name, email, phone)'); //Get data var values; var base_url = "https://www.hoomz.nl/staging/index.php/api/"; $.getJSON(base_url + 'profiles', function(result) { $.each(result, function(i, item) { console.log(item.name); console.log('(' + item.id + ', "' + item.id + '", "' + item.id + '", "' + item.id + '"),'); values = values + '(' + item.id + ', "' + item.id + '", "' + item.id + '", "' + item.id + '"),'; }); console.log(values); tx.executeSql('INSERT INTO Profiles (id, name, email, phone) VALUES' + values + ';'); }); console.log(values); tx.executeSql('INSERT INTO Profiles (id, name, email, phone) VALUES' + values + ';'); }
还给出了这个错误:
Uncaught InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable
.
在这种情况下抛出的错误是,当SQL引擎尝试插入值时,对象不再存在.您应该将JSON结果存储在全局变量中,然后执行SQL操作.尝试下面的代码并查看结果.