6***@qq.com
6***@qq.com
  • 发布:2019-09-29 16:31
  • 更新:2020-03-12 16:11
  • 阅读:1789

【报Bug】plus.sqlite.executeSql方法执行失败,安卓手机不会触发fail回调函数

分类:HBuilderX

详细问题描述

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]
使用plus.sqlite的时候,往已有表里面插入数据的情况下,执行plus.sqlite.executeSql方法失败的情况下(例如插入不存在的数据库表字段),安卓手机无法触发fail的回调函数,控制台报 Uncaught SyntaxError: Invalid or unexpected token,尝试在try-catch块中捕获该异常,也无法捕获;但是苹果手机能够触发plus.sqlite.executeSql方法的fail的回调函数;

重现步骤

[步骤]
1.建表语句 CREATE TABLE if not exists push_msg("id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,"uid" INT NOT NULL,"title" CHAR(100) NOT NULL,"content" TEXT NULL,"operation" CHAR(100) NULL,"payload" TEXT NOT NULL,"hasRead" INT NOT NULL,"create_time" DATETIME NOT NULL DEFAULT(datetime('now','localtime')),"update_time" DATETIME NOT NULL DEFAULT(datetime('now','localtime')),"del_flg" INT DEFAULT(0))
2.插入数据 insert into push_msg('uid','title','erro','content','operation','payload','hasRead') values('1179','测试','测试执行失败事务是否会回滚','测试批量6
16:22:38.924 接收时间:2019-09-12 10:49:41','pushMessage','{"operation":"pushMessage","sendTime":1568256581816}','0')
[结果]
控制台报 Uncaught SyntaxError: Invalid or unexpected token
[期望]
应该跟苹果手机一样,进入plus.sqlite.executeSql方法的fail的回调函数;

2019-09-29 16:31 负责人:无 分享
已邀请:
6***@qq.com

6***@qq.com (作者)

用苹果手机真机调试,能够进入fail的回调函数,安卓手机不行; IDE为 hbuilder x

DCloud_Android_zl

DCloud_Android_zl

麻烦提供一个简单的demo。

1***@qq.com

1***@qq.com

我也遇到了类似情况,新手,用sqlite执行insert语句不执行也不报错,然后我把sql语句移到方法外面就报错了,变量不存在。如果你们也遇到了不执行不报错的情况,可以按我的方法试试

uniapper

uniapper - abc

控制台报 Uncaught SyntaxError: Invalid or unexpected token

检查一下你的代码有无语法错误吧。 或者贴出来让大家帮你检查一下

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