【发布时间】:2017-10-26 15:11:09
【问题描述】:
我目前正在编写一个将 csv 文件读入 Firebird 数据库的 (C++) 程序。在算法期间,我的表被修改。 由于整个读取过程需要几分钟,所以我将读取部分设置为可选,因此如果数据库已经充满数据,用户可以决定不更新它。
多次运行程序时,我想使用原始数据,而不是上次运行时修改过的数据,所以我想到了类似
create table table1_backup as (select*from table1);
然后,在重新启动程序时(以防我们不想更新数据)
删除表table1; create table table1 as (select*from table1_backup);
看起来,在 Firebird 中复制表格并不能以这种方式工作。
还有其他想法吗?
【问题讨论】:
-
程序运行之间是否需要在新表中持久化数据?还是你总是清除它?不同的程序可以一起使用该新表还是只有一个程序可以独占使用它?似乎您不需要创建表,只需加载要在断开连接时完全删除的数据。那是 GTT - stackoverflow.com/tags/global-temp-tables/info
标签: firebird