gpt4 book ai didi

c - Sqlite 通过 C 不返回普通 sqlite 所在的结果

转载 作者:行者123 更新时间:2023-11-30 18:02:25 24 4
gpt4 key购买 nike

编写一个程序来从 sqlite 数据库检索数据时,尽管在 sqlite cli 中执行完全相同的查询返回了预期结果,但仍不返回任何结果。

#include <stdio.h>
#include <sqlite3.h>

sqlite3 * db;
sqlite3_stmt * locationgetint;

int locationInt(char * string){
sqlite3_bind_text(locationgetint,1,string,-1,SQLITE_STATIC);
sqlite3_step(locationgetint);
int output = sqlite3_column_int(locationgetint,0);
sqlite3_clear_bindings(locationgetint);
sqlite3_reset(locationgetint);
return output;
}

int main(){
sqlite3_open("db.sqlite3",&db);
sqlite3_prepare_v2(db,"SELECT id FROM pfs WHERE name='?';",-1,&locationgetint,0);
printf("%d\n",locationInt("Milky Way")); // Prints 0
return 0;
}

但是Sqlite CLI版本:

sqlite> SELECT id FROM pfs WHERE name='Milky Way';
625
sqlite>

最佳答案

正如 Sjoerd 所说,删除引号是有效的。

关于c - Sqlite 通过 C 不返回普通 sqlite 所在的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9193089/

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