2***@qq.com
2***@qq.com
  • 发布:2020-05-21 09:35
  • 更新:2021-12-29 13:31
  • 阅读:2433

为什么uniapp的sqlite的方法不能直接获取db文件数据库里面的数据

分类:uni-app

我的本地的db文件里有两条数据,然后代码中打开数据库
plus.sqlite.openDatabase({
name: 'sss',
path: '_doc/sss.db',
success: function(e) {
console.log('打开数据库!');
},
fail: function(e) {
console.log('openDatabase failed: ' + JSON.stringify(e));
}
});
也能打开,但是执行查询代码
plus.sqlite.selectSql({
name: 'sss',
sql: 'select from sss',
success: function(data) {
console.log('查询成功');
console.log(data);
// for (var i in data) {
// console.log(data[i]);
// }
},
fail: function(e) {
console.log('selectSql failed: ' + JSON.stringify(e));
}
});
提示{"code":-1404,"message":"android.database.sqlite.SQLiteException: no such table: sss (code 1 SQLITE_ERROR): , while compiling: select
from sss,http://ask.dcloud.net.cn/article/282"} 查了下意思应该是没有sss这个表,
必须要在数据库里创建一个表才行
plus.sqlite.executeSql({
//INT(11) PRIMARY KEY AUTOINCREMENT 这为主键 设置主键会增加查询速度
name: 'sss',
// sql: CREATE TABLE "sss" (
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
"name" TEXT NOT NULL
)',
sql: 'CREATE TABLE "student" ("id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,"name" TEXT NOT NULL,"math" NUMERIC NOT NULL,"chinese" NUMERIC NOT NULL)',
//创建数据库表名并设置主键
success: function(e) {
console.log('executeSql success!');
// ALTER TABLE table_name ADD PRIMARY KEY()
// alter table tablename modify id int(11) auto_increment;
},
fail: function(e) {
console.log('executeSql failed: ' + JSON.stringify(e));
}
});
请问这是怎么回事

2020-05-21 09:35 负责人:无 分享
已邀请:
喜欢技术的前端

喜欢技术的前端 - QQ---445849201

var sql = 'create table if not exists haha ("login_id" CHAR(40),"list_id" CHAR(40))';

  • 2***@qq.com (作者)

    这个是创建一个新的表的意思吧,我是想获取本来就有的表里面的数据

    2020-05-21 10:21

喜欢技术的前端

喜欢技术的前端 - QQ---445849201

试试这条sql ,这里面,空格,单双引号要格外注意,一不小心就出错

Liz

Liz

我也是获取不了表里原有的数据,请问楼主解决了吗?

  • 5***@qq.com

    233 没有 后面改用其他方式对接数据了

    2021-03-05 11:51

1***@qq.com

1***@qq.com

这个sqLite真是一个让人上头的东西

1***@qq.com

1***@qq.com

你好,请问你是如何连接手机_doc下的数据库的,麻烦了,感谢

该问题目前已经被锁定, 无法添加新回复