sqlite3_get_table

时间:2015-09-06 23:49:15

标签: sqlite

sqlite3_get_table返回一个指针,该指针必须在使用后释放。

有3例:

  • 无效请求
  • 空表
  • 正常回归

在第三种情况下,显然必须使用sqlite3_free_table()释放该表。

在第一种和第二种情况下,文档没有说明是否分配了一个表(并且必须被释放)。

有人知道答案还是我应该使用这样的东西:

ptr = NULL;
rc = sqlite3_get_table( db, &ptr, &nRow, nCol,perr);
...
if( ptr != NULL) sqlite3_free_table( ptr);

PS:我已经知道{@ 1}}将被弃用。

1 个答案:

答案 0 :(得分:0)

{/ 1}} 将被弃用是错误的; 已弃用。

确切的行为并不重要,因为没有人会如此鲁莽地使用此函数编写新代码。

但如果你想了解好奇的细节:

  • sqlite3_get_table()始终返回有效指针或NULL。
  • sqlite3_get_table()使用有效指针或NULL。