我的表USER的ID为ID,NAME和ADDRESS。例如
列ID有1,2,列名具有Bob,Jane列地址有UK,US
我希望遍历所有记录并将每一列保存到一个数组中。结果将是这样的:
字符* NAME [2]; NAME [0]的名字是“ Bob”,NAME [1]的名字是“ Jane”,
字符* ADDRESS [2]; ADDRESS [0]将具有“ UK”,ADDRESS [1]将具有“ US”。
有人可以为我指出正确的方向,而不是为每个数组条目调用SQL语句吗?
提前致谢!
如果从链接到的教程中的SELECT示例开始,则可以对其进行修改以使其具有
struct results {
size_t num_used;
char* NAME[SOME_MAX_NUMBER_OF_ROWS_HERE];
char* ADDRESS[SOME_MAX_NUMBER_OF_ROWS_HERE];
};
然后在堆栈中放置其中之一(将num_used设置为0),并将指向该指针的指针作为的参数4传递sqlite3_exec
。callback
然后在中,将参数1强制转换为的指针struct results
,strdup
将字段强制转换为results->NAME[results->num_used]
etc,然后results->num_used
在末尾递增。当sqlite3_exec
返回时,你应该有你NAME
和ADDRESS
阵列填写。
当然,还有更好的处理数组的方法,因此您不必预期最大的行数等,但这是一个不同的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句