SQLite C 接口

动态字符串的状态

int sqlite3_str_errcode(sqlite3_str*);
int sqlite3_str_length(sqlite3_str*);
char *sqlite3_str_value(sqlite3_str*);

这些接口返回sqlite3_str对象的当前状态。

如果在 sqlite3_str X 中构造动态字符串时发生任何先前错误,则sqlite3_str_errcode(X)方法将返回适当的错误代码。sqlite3_str_errcode(X)方法在出现任何内存不足错误后返回 SQLITE_NOMEM 如果动态字符串的大小超过 SQLITE_MAX_LENGTH返回 SQLITE_TOOBIG ,如果没有错误则返回 SQLITE_OK。

sqlite3_str_length(X)方法返回sqlite3_str对象X中正在构建的动态字符串当前长度,以字节为单位。sqlite3_str_length( X ) 返回的长度不包括零终止字节。

sqlite3_str_value(X)方法返回指向 X 中正在构造的动态字符串的当前内容的指针。sqlite3_str_value(X) 返回的值由sqlite3_str对象X 管理,并且可能被同一对象上的任何后续方法释放或更改 sqlite3_str对象。在同一对象上的任何后续方法调用之后,应用程序不得使用返回的 sqlite3_str_value(X)指针。应用程序可以更改sqlite3_str_value(X)返回的字符串的内容,只要它们不写入 0 到sqlite3_str_length(X)范围之外的任何字节,并且在任何后续 sqlite3_str 方法调用之后不读取或写入任何字节。

另请参阅 对象常量函数的列表。