8***@qq.com
8***@qq.com
  • 发布:2020-02-21 16:51
  • 更新:2020-02-21 17:21
  • 阅读:647

哪位大哥能解释一下:字符串数组应该是怎样的?

分类:HBuilderX

options参数为json类型,包含以下属性:

name: ( String ) 必选 数据库名称
sql: ( Array[ String ] | String ) 必选 需要执行的SQL语句
参数为字符串时,表示执行单条SQL语句; 参数为字符串数组时,表示执行多条SQL语句,按数组顺序执行,某条SQL语句执行错误则终止。 注意:Android平台不支持SQL语句中使用“;”分割多条命令,要运行多条命令请使用字符串数组参数。
success: ( SQLiteSuccessCallback ) 可选 执行SQL语句成功回调函数
回调函数无返回参数。
fail: ( SQLiteFailCallback ) 可选 执行SQL语句失败回调函数

var insert_data_sql = ["INSERT INTO 'data' VALUES (5, 'aaa')"]; // 多条-字符串数组-现在这样不正确
var insert_data_sql = "INSERT INTO 'data' VALUES (4, 'aaa')"; // 单条-字符串-正确

2020-02-21 16:51 负责人:无 分享
已邀请:
8***@qq.com

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

var insert_data_sql = "[\"INSERT INTO 'data' VALUES (5, 'aaa')\"]"; // 多条-字符串数组-现在这样也不正确

  • DCloud_App_Array

    js中数组可以这么写:

    var strarray = ["第一条sql语句","第二条sql语句"];

    2020-02-21 18:12

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

    回复 DCloud_App_Array:

    var insert_data_sql = "INSERT INTO 'all_data' VALUES (5, 'aaa', 'bbb', 'ccc')"; // 成功

    var insert_data_sql = ["INSERT INTO 'all_data' VALUES (6, 'aaa', 'bbb', 'ccc')","INSERT INTO 'all_data' VALUES (7, 'aaa', 'bbb', 'ccc')"];// 失败

    报错:executeSql failed: {"code":-1404,"message":"android.database.sqlite.SQLiteException: near \"[\"INSERT INTO 'all_data' VALUES (6, 'aaa', 'bbb', 'ccc')\",\"INSERT INTO 'all_data' VALUES (7, 'aaa', 'bbb', 'ccc')\"]\": syntax error (code 1): , while compiling: [\"INSERT INTO 'all_data' VALUES (6, 'aaa', 'bbb', 'ccc')\",\"INSERT INTO 'all_data' VALUES (7, 'aaa', 'bbb', 'ccc')\"],http://ask.dcloud.net.cn/article/282"} at App.vue:81

    你看一下我写的是否正确

    这是表结构:var create_table_sql = 'CREATE TABLE IF NOT EXISTS all_data("id" INTEGER(11),"title" TEXT(255),"img" TEXT(255),"link" TEXT(255),PRIMARY KEY ("id"))';

    2020-02-22 12:48

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

    回复 DCloud_App_Array: 多条数据正确应该这样:

    var insert_data_sql = "INSERT INTO 'all_data' VALUES (6, 'a', 'b', 'c');INSERT INTO 'all_data' VALUES (7, 'a', 'b', 'c')";

    注意:Android平台不支持SQL语句中使用“;”分割多条命令,要运行多条命令请使用字符串数组参数。

    文档中这样标示,存在误解;建议再测试一下,是版本问题吗

    2020-02-22 13:06

  • DCloud_App_Array

    回复 8***@qq.com: 需HBuilderX2.5.5+版本才支持包含多条语句的数组,请更新到最新版本。

    2020-02-24 11:21

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