电商网站开发平台需要多少,企业建站模版,顺德定制网站建设,怎样防止别人利用自己电脑做网站这个过程从执行sqlite3_step()执行一个准备语句得到的结果集的当前行中返回一个列。每次sqlite3_step得到一个结果集的列停下后#xff0c;这个过程就可以被多次调用去查询这个行的各列的值。对列操作是有多个函数#xff0c;均以sqlite3_column为前缀
const void *sqlite3_…这个过程从执行sqlite3_step()执行一个准备语句得到的结果集的当前行中返回一个列。每次sqlite3_step得到一个结果集的列停下后这个过程就可以被多次调用去查询这个行的各列的值。对列操作是有多个函数均以sqlite3_column为前缀
const void *sqlite3_column_blob(sqlite3_stmt*, int iCol);
int sqlite3_column_bytes(sqlite3_stmt*, int iCol);
int sqlite3_column_bytes16(sqlite3_stmt*, int iCol);
double sqlite3_column_double(sqlite3_stmt*, int iCol);
int sqlite3_column_int(sqlite3_stmt*, int iCol);
sqlite3_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol);
const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);
const void *sqlite3_column_text16(sqlite3_stmt*, int iCol);
int sqlite3_column_type(sqlite3_stmt*, int iCol);
sqlite3_value *sqlite3_column_value(sqlite3_stmt*, int iCol);
说明
第一个参数为从sqlite3_prepare返回来的prepared statement对象的指针第二参数指定这一行中的想要被返回的列的索引。最左边的一列的索引号是0行的列数可以使用sqlite3_colum_count()获得。
这些过程会根据情况去转换数值的类型sqlite内部使用sqlite3_snprintf()去自动进行这个转换下面是关于转换的细节表 内部类型 请求的类型 转换 NULL INTEGER 结果是0 NULL FLOAT 结果是0.0 NULL TEXT 结果是NULL NULL BLOB 结果是NULL INTEGER FLOAT 从整形转换到浮点型 INTEGER TEXT 整形的ASCII码显示 INTEGER BLOB 同上 FLOAT INTEGER 浮点型转换到整形 FLOAT TEXT 浮点型的ASCII显示 FLOAT BLOB 同上 TEXT INTEGER 使用atoi() TEXT FLOAT 使用atof() TEXT BLOB 没有转换 BLOB INTEGER 先到TEXT然后使用atoi BLOB FLOAT 先到TEXT然后使用atof BLOB TEXT 如果需要的话添加0终止符 注BLOB数据类型是指二进制的数据块比如要在数据库中存放一张图片这张图片就会以二进制形式存放在sqlite中对应的数据类型就是BLOB int sqlite3_column_bytes(sqlite3_stmt*, int iCol)int sqlite3_column_bytes16(sqlite3_stmt*, int iCol)两个函数返回对应列的内容的字节数这个字节数不包括后面类型转换过程中加上的0终止符。
下面是几个最安全和最简单的使用策略
先sqlite3_column_text() 然后 sqlite3_column_bytes()先sqlite3_column_blob()然后sqlite3_column_bytes()先sqlite3_column_text16()然后sqlite3_column_bytes16()