SQLite C 接口
创建一个新的动态字符串对象
sqlite3_str *sqlite3_str_new(sqlite3*);
sqlite3_str_new(D)接口分配并初始化一个新的 sqlite3_str对象。为避免内存泄漏, sqlite3_str_new()返回的对象必须通过随后调用 sqlite3_str_finish(X)来释放。
sqlite3_str_new(D)接口总是返回一个指向有效sqlite3_str对象的指针,尽管在发生内存不足错误时返回的对象可能是一个特殊的单例,它将默默地拒绝新文本,总是从 sqlite3_str_errcode()返回 SQLITE_NOMEM ,始终为sqlite3_str_length()返回 0 ,并始终从sqlite3_str_finish(X)返回 NULL 。使用sqlite3_str_new(D)返回的值作为任何其他sqlite3_str方法的 sqlite3_str 参数总是安全的。
sqlite3_str_new(D)的 D 参数可能为 NULL。如果sqlite3_str_new(D)中的 D 参数不为 NULL,则sqlite3_str对象中包含的字符串的最大长度将为sqlite3_limit (D, SQLITE_LIMIT_LENGTH ) 设置的值,而不是SQLITE_MAX_LENGTH。