对于sqlite3_bind_,
* ^可以使用.查找命名参数的索引
** [sqlite3_bind_parameter_index()] API,如果需要. ^索引
**“?NNN”参数是NNN的值.
** ^ NNN值必须介于1和[sqlite3_limit()]之间
for sqlite3_column_ *
** ^结果集的最左列具有索引0.
** ^可以使用确定结果中的列数
** [sqlite3_column_count()].
为什么会出现这种奇怪的不一致?
没有奇怪的不一致.sqlite3_bind _ *()函数将值与printf样式格式说明符(sqlite3自己的术语中的“主机参数名称”)相关联.它具有与函数参数类似的功能,它匹配约定从1开始编号(“第一个参数”,“第二个参数”,……).
相似性:在POSIX C中,printf()函数接受可以使用%N $c语法修改转换顺序的格式字符串,其中c是实际转换说明符字符或字符序列,N是从1开始的数字.
但是,列不是类似于参数的实体.它们是可索引数据结构中的项目.它们更类似于,例如,数组的元素,这就是为什么从零开始索引它们是有意义的.
总结以上是内存溢出为你收集整理的为什么sqlite3_bind_ *从索引1开始但sqlite3_column_ *从0开始?全部内容,希望文章能够帮你解决为什么sqlite3_bind_ *从索引1开始但sqlite3_column_ *从0开始?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)