Uniapp 数据持久化 与 sqlite
    		       		warning:
    		            这篇文章距离上次修改已过419天,其中的内容可能已经有所变动。
    		        
        		                
                在uniapp中,数据持久化可以通过多种方式实现,包括使用SQLite数据库。以下是使用uniapp结合SQLite进行数据持久化的基本步骤和示例代码:
- 导入plus.sqlite模块。
- 使用plus.sqlite创建或打开数据库。
- 使用executeSql方法执行SQL语句。
示例代码:
// 导入plus.sqlite模块
const sqlitePlugin = weex.requireModule('plus.sqlite')
 
// 创建或打开数据库
sqlitePlugin.openDatabase({
    name: 'myDatabase',
    location: 'default',
    success(e) {
        console.log('数据库创建或打开成功:' + JSON.stringify(e))
        // 创建数据表
        sqlitePlugin.executeSql({
            name: 'myDatabase',
            sql: 'CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)'
        }, () => {
            console.log('数据表创建成功')
        }, (e) => {
            console.log('创建数据表失败:' + JSON.stringify(e))
        })
    },
    fail(e) {
        console.log('数据库创建或打开失败:' + JSON.stringify(e))
    }
})
 
// 插入数据
sqlitePlugin.executeSql({
    name: 'myDatabase',
    sql: 'INSERT INTO user (name, age) VALUES (?, ?)',
    replacement: ['张三', 25]
}, () => {
    console.log('数据插入成功')
}, (e) => {
    console.log('数据插入失败:' + JSON.stringify(e))
})
 
// 查询数据
sqlitePlugin.executeSql({
    name: 'myDatabase',
    sql: 'SELECT * FROM user'
}, (e) => {
    if (e.rows.length > 0) {
        console.log('查询结果:' + JSON.stringify(e.rows))
    } else {
        console.log('没有查询到数据')
    }
}, (e) => {
    console.log('查询失败:' + JSON.stringify(e))
})请注意,在真实的uniapp项目中,你需要确保有适当的权限去访问设备的文件系统,并且处理好数据库版本管理和迁移的问题。此外,SQLite的操作是异步的,你可能需要使用Promise或者回调函数来处理操作结果。
评论已关闭