"我注意到有方法是数据源.error, 是判断 sql 执行有没有报错, 我就尝试使用了数据源.execute@k(sql), 如果数据源.error==0 我在 commit, 否则 roll .."
我注意到有方法是数据源.error, 是判断 sql 执行有没有报错, 我就尝试使用了数据源.execute@k(sql), 如果数据源.error==0 我在 commit, 否则 rollback, 我为了测试, 故意写了一条错误 sql, 但是我发现如果.execute 执行报错了, 直接就弹窗了, 代码中止执行, 没办法执行到下一步判断.error 是否为 0, 这就让我很疑惑
数据源的 dbcon.execute,出现错误时是否中止,是要判断数据库连接 dbcon 的状态的,只有用 connect@e 生成连接时,代码才不会中止。默认情况下出错时,错误信息会弹出。另外,这里 dbcon.error 处理的是数据库执行 sql 时出现的错误,如果是集算器中使用的函数本身存在错误则不在此列,如 dbcon.execute、dbcon.update 函数中出现了异常参数,未指定主键等等错误,这些情况会造成函数解析失败,并不是数据库执行错误
奥奥好的, 原来.error 是搭配在连接的时候指定 @e 使用, 感谢解答
数据源的 dbcon.execute,出现错误时是否中止,是要判断数据库连接 dbcon 的状态的,只有用 connect@e 生成连接时,代码才不会中止。默认情况下出错时,错误信息会弹出。
另外,这里 dbcon.error 处理的是数据库执行 sql 时出现的错误,如果是集算器中使用的函数本身存在错误则不在此列,如 dbcon.execute、dbcon.update 函数中出现了异常参数,未指定主键等等错误,这些情况会造成函数解析失败,并不是数据库执行错误
奥奥好的, 原来.error 是搭配在连接的时候指定 @e 使用, 感谢解答