Sqlite将数据库保存/加载到文件流中

时间:2012-03-15 19:39:07

标签: c++ database sqlite filestream

我有一个sqlite数据库,它打开在:memory:需要在中途流式传输/序列化到另一个文件中。

例如:

// Some data
// more data
// SQLITE
// more data
// more data

最好的方法是什么?一种选择是使用sqlite_backup代码写入临时文件,然后重新读入文件并将其流出然后删除临时文件。这可能相对容易实现,但不会完全有效。

另一种选择是按表手动写出数据表,但这很痛苦。

还有另一种直接从内存流式传输数据库的方法吗?我的文件流使用boost :: iostreams :: filtering_ostream作为基础。

谢谢!

此外,如果任何人有任何处理可能更改/添加列名的不同版本的用法,那就太棒了!

1 个答案:

答案 0 :(得分:0)

是的,我只是手动序列化所有内容并在加载时重新生成INSERT / CREATE语句。希望有更好的方法......