执行 SQL 语句,返回单个值,结果类型由执行具体 sql 的结果决定。
const db = ymx.getDatabaseManager();
await db.execute({
sql: 'CREATE TABLE IF NOT EXISTS User (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(32), gender INTEGER)'
});
await db.execute({
sql: 'PRAGMA user_version = 1'
});
await db.execute({
sql: 'INSERT INTO User (name, gender) VALUES (?, ?)',
bindArgs: ["张三", 1]
});
await db.execute({
sql: 'INSERT INTO User (name, gender) VALUES (?, ?)',
bindArgs: ["李四", 0]
});
//获取用户版本
let userVersion = await db.execute({
sql: 'PRAGMA user_version'
});
if (userVersion == 1) {
try {
await db.execute({ sql: 'ALTER TABLE User ADD birthday INTEGER' });
//设置用户版本
userVersion = 2;
await db.execute({
sql: `PRAGMA user_version = ${userVersion}`
});
alert('升级数据库成功');
} catch (err) {
alert(`升级数据库失败 ${err.message}`);
}
} else if (userVersion == 2) {
//...
}
基于 SQLite 的关系型数据库管理器