C sqlite3如何在准备和绑定(bind)后打印实际查询?

标签 c sqlite

如何打印在这样的部分代码中执行的实际最终 sqlite3 查询?

int rc;
sqlite3_stmt *res;
char *query = "";
query = "SELECT count(*) FROM `db_report` WHERE `r_sn` = ?;";
rc = sqlite3_prepare_v2(db, query, -1, &res, 0);
if (rc == SQLITE_OK)
{
    sqlite3_bind_text(res, 1, sn, strlen(sn), SQLITE_STATIC);
} 
int step = sqlite3_step(res);
PRINT REAL QUERY
sqlite3_finalize(res);
return 0;

非常感谢 :)

最佳答案

您可以使用 sqlite3_expanded_sql 检索指向包含扩展绑定(bind)参数的最终查询的字符串的指针。

关于C sqlite3如何在准备和绑定(bind)后打印实际查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42526007/

相关文章:

c - 忽略除整数之外的所有内容 scanf

c - 将节点插入单链表时如何避免段错误?

c - 程序更新链表

xcode - 在Xcode中创建应用程序时的切入点(应用程序级别)是什么?

c - 在sqlite的回调函数中动态重新分配2个dim数组

sql - 在 Where 子句中使用表

c - 如何解析用户的输入以确定在 C 中打印结果的位置?

c - 使用主入口点将 HINSTANCE 传递给 WNDCLASS

android - 不能在 Android 应用程序中使用 like 子句

database - 如何使用 luasql 创建 Sqlite3 数据库?