我总体上仍在学习离子和编程。我点击了Internet上的链接,就可以创建白色并读取必要的数据,但无法在创建的表中插入数据。谁能帮我这个?
我遵循本教程:ionic-sqlite
我的代码:
getRegiao() { // Regiões //
return new Promise<Regiao[]>((resolve, reject) => {
let sql = "SELECT NOM_REGIAO, ID " +
"FROM TB_REGIAO "
this.executeQuery(sql).then(data => {
let regioes = [];
if (data != undefined)
data.forEach(function (row) {
let regiao: Regiao = { nom_regiao: row[0], id: row[1] }
regioes.push(regiao);
});
resolve(regioes);
}).catch(error => {
console.log(error);
});
});
}
addUser() {
let sql = "INSERT INTO TB_USUARIO (EMAIL) VALUES ('BLITCRANK@HOTMAIL.COM')";
// let sql = "SELECT EMAIL FROM TB_USUARIO";
this.executeQuery(sql);
}
executeQuery(sql: string) {
let db: any;
return new Promise<any>((resolve, reject) => {
let xhr = new XMLHttpRequest();
xhr.open('GET', this.dbName, true);
xhr.responseType = 'arraybuffer';
xhr.onload = (e) => {
let uInt8Array = new Uint8Array(xhr.response);
db = new SQL.Database(uInt8Array);
let contents = db.exec(sql);
console.log(contents);
if (contents.length > 0)
resolve(contents[0].values);
else
resolve("query executada sem retorno")
};
xhr.send();
});
}
答案 0 :(得分:0)
请使用此plugin,这是我正在使用的插件。
使用db.executeSql('create table danceMoves(name VARCHAR(32))', {})
这样的执行sql时要注意
而是使用此db.executeSql('create table danceMoves(name VARCHAR(32))', [])
我不知道为什么不使用对象'{}'而是将其替换为数组'[]',我认为他们忘记更新文档了