我想看看SQLiteDatabase生成的SQL语句,以了解出错的原因。有没有办法让SQLiteDatabase登录到logcat?
谢谢, 伊泰。
编辑:这与Logging SQL queries in android不同,因为我正在尝试记录插入和更新语句 - 我没有光标。
答案 0 :(得分:2)
您必须使用跟踪API自行实现它,因此您可以实现SQLite Trace的回调:
在sqlite3_trace()注册的回调函数被调用 sqlite3_step()运行SQL语句的各种时间。 使用UTF-8渲染调用sqlite3_trace()回调 SQL语句文本作为语句首先开始执行。额外 每个触发的子程序都可能发生sqlite3_trace()回调 进入。触发器的回调包含UTF-8 SQL注释 识别触发器。
sqlite3_profile()注册的回调函数被调用为 每个SQL语句都完成了。配置文件回调包含 原始陈述文本和挂钟时间估计多长时间 该声明开始运行。配置文件回调时间以。为单位 纳秒,但目前的实现只能 毫秒分辨率因此是时间中的六个最低有效数字 毫无意义。 SQLite的未来版本可能会提供更多 分析器回调的分辨率。 sqlite3_profile()函数是 被认为是实验性的,并且在将来的版本中会有所变化 SQLite的。