gpt4 book ai didi

android - 打印出从 SQLiteQueryBuilder 构建的 sql 语句

转载 作者:行者123 更新时间:2023-11-29 14:07:03 25 4
gpt4 key购买 nike

为了方便调试,有什么办法可以在执行下面的查询之前先打印一条sql语句?

        c = qb.query(
epgDB,
projection,
selection,
selectionArgs,
null,
null,
sortOrder);

最佳答案

如果您已经使用了特定的 SQLiteQueryBuilder 方法,例如appendWhere(),调用buildQuery()即可生成底层SQL语句:

SQLiteQueryBuilder qb = new SQLiteQueryBuilder();

// call qb.appendWhere(), qb.appendColumns(), qb.setProjectionMap() etc.

String sql;
sql = qb.buildQuery(null, null, null, null, null, null, null); // pre API 11
sql = qb.buildQuery(null, null, null, null, null, null); // API 11 and later

这两种方法在调用 buildQueryString() 之前将先前由各个方法设置的参数与它们自己的参数组合在一起。它们不会更改 SQLiteQueryBuilder 对象的状态,因此在执行查询之前可以安全使用。

注意事项:我是从代码本身了解到这一点的,而 javadoc 没有提到使用这种方法来获取 SQL 字符串。因此,我建议对可能改变方法行为的更改保持警惕。

关于android - 打印出从 SQLiteQueryBuilder 构建的 sql 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6260375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com