代码之家  ›  专栏  ›  技术社区  ›  lisak

mysql转储到derby

  •  5
  • lisak  · 技术社区  · 14 年前

    我在Eclipse中使用Derby进行开发。是否可以从MySQL中转储一个表并以某种方式将其用于Derby?我知道DDL和DML对于这两个DBMS都是不同的,但我正在寻找一种合适的方法,而不是转储/导出。

    3 回复  |  直到 11 年前
        1
  •  3
  •   mlschechter    14 年前

    我可以找到两个选择;如果我正确理解你的问题,我想至少有一个可以涵盖你正在寻找的内容。

    如果焦点是来自单个表的数据(或其子集),请使用 ij 如中所示 Derby tools documentation (参见“使用批量进出口程序”)。可以使用所需格式的固有格式命令从MySQL中提取数据,该格式似乎是相当标准的csv(这需要在Derby数据库中已有一个适当的表)。

    下面是MySQL论坛的一个例子:

    SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    FROM test_table; 
    

    如果你想导入所有东西, Apache DdlUtils 允许将整个架构从MySQL传输到Derby。这不需要Derby中重复的表定义,因为它是使用ddlutils的导入/导出过程的一部分。

        2
  •  1
  •   Thomas Mueller    14 年前

    除非您需要自动化流程,否则 DBCopy Plugin for SQuirreL SQL Client “工具可能对你有用。可能还有其他的工具,但那是我所知道的(但我从未使用过)。

    如果您确实需要自动化这个过程,并且您不太关心DDL,那么我可能会使用csv。

        3
  •  0
  •   Matthias Reining    11 年前

    要将MySQL(生产环境)的数据接管到Derby(开发环境),我使用以下命令:

    mysqldump -u root -h 127.0.0.1 --compatible=ansi --complete-insert --skip-add-drop-table --skip-add-locks --skip-comments --skip-disable-keys --skip-set-charset --no-create-info dbname > export.sql
    

    但特别是在德比,我也有解除约束的问题。因此,insert语句的顺序必须正确!