sqlite中sqlite3_exec函数参数的回调函数为什么调用了多次

hzfushi 2009-01-21 02:09:52
打开数据库成功后,创建了表MyTable_1。使用
result = sqlite3_exec( db, "insert into MyTable_1( name ) values ( '走路' )", NULL, NULL, &errmsg );
result = sqlite3_exec( db, "insert into MyTable_1( name ) values ( '汽车' )", NULL, NULL, &errmsg );
result = sqlite3_exec( db, "insert into MyTable_1( name ) values ( '乘车' )", NULL, NULL, &errmsg );
三个语句在表中插入了数据。这三个函数中都没有回调函数参数。

上面的操作都没有问题。
最后用
result = sqlite3_exec( db, "select * from MyTable_1", LoadMyInfo, NULL, errmsg );
查询表的内容。LoadMyInfo是已经定义的回调函数。

我想问一下。理论上只有在result = sqlite3_exec( db, "select * from MyTable_1", LoadMyInfo, NULL, errmsg );
的时候才会去调用回调函数,为什么我的程序在显示的时候,显示LoadMyInfo执行了三次。

谢谢!!
...全文
2003 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
upczap 2010-08-20
  • 打赏
  • 举报
回复
是呀,没查询一条记录应该就要调用一次的!
wuxiao0313 2010-01-06
  • 打赏
  • 举报
回复
每查询一条调用一次 你里边有三条记录
ACMAIN_CHM 2009-01-21
  • 打赏
  • 举报
回复
sqlite中sqlite3_exec函数参数的回调函数为什么调用了多次

所谓回调函数,是由sqlite3_exec函数来控制调用的。针对记录中的每一行包括列名行,sqlite3_exec都会调用一次你的这个函数。

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧