【问题标题】:Import only specific rows from hsqldb backup从 hsqldb 备份中仅导入特定行
【发布时间】:2013-06-27 05:04:14
【问题描述】:

我正在尝试在我的java 应用程序中创建一个函数,用户可以在其中选择先前制作的备份,但只导入不在当前数据库实例中的表行。使用MySql 数据库,我可以转储我的表,在.sql 中重命名它们以在再次导入时创建临时表,然后简单地交叉查询不在数据库中的所有行。知道如何在我的java 应用程序中在hsqldb 中完成类似的事情吗?

【问题讨论】:

    标签: java backup hsqldb


    【解决方案1】:

    你可以这样做:

    1. 打开备份数据库

    2. 创建一个作为主表副本的文本表,例如CREATE TEXT TABLE yourtable_copy AS (SELECT * FROM yourtable)

    3. 为表SET TABLE yourtable_copy SOURCE 'filepath'设置文件

    4. 将数据复制到新表中

    5. 使用SET TABLE yourtable_copy SOURCE OFF关闭源

    6. 关闭备份数据库

    7. 打开主数据库

    8. 现在与主数据库进行相同的文本表创建和源设置,但不要复制数据,因为备份数据已经存在并且将被打开

    9. 进行更新,然后在主数据库中关闭文本源

    参考http://www.hsqldb.org/doc/2.0/guide/texttables-chapt.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-17
      • 2013-02-19
      • 1970-01-01
      • 2018-03-03
      • 2022-01-05
      • 1970-01-01
      • 2014-07-05
      • 2014-02-06
      相关资源
      最近更新 更多