【发布时间】:2016-06-30 13:25:50
【问题描述】:
我在“D:/Dev/workspaces/workspacePro/School-FinMa/school-finma”中有一个 derby db。我想将它导出到这个文件夹“E:/”。所以我运行这个:
Runtime.getRuntime().exec("java org.apache.derby.tools.dblook -d 'jdbc:derby:D:/Dev/workspaces/workspacePro/School-FinMa/school-finma' -o 'E:/myDB_DDL.sql'");
但是什么也没发生,就好像这段代码不存在一样。
我想要一种将数据库导出到单个 .sql 文件的方法,该文件包含所有数据库生成代码 + 数据。我怎样才能在 Java 中做到这一点??
项目(在 Eclipse 中)已导入 derbytools.jar。
【问题讨论】:
-
命令行中是否有相同的命令?你读过进程的输出和错误流吗?有没有错误?
-
dblook 只会导出您的“模式”——一堆或
CREATE TABLE、CREATE INDEX、CREATE VIEW等语句——而不是数据库表本身。听起来您想备份您的数据库? -
:vanje: 没有错误没有输出,什么都没有。我在 cmd 中使用了这个命令,它可以工作: dblook -d 'jdbc:derby:D:/Dev/workspaces/workspacePro/School-FinMa/school-finma' -o 'myDB_DDL.sql' 但我想要应用程序(用户)能够从命令行做到这一点不是我。
-
:bryan 那么我怎么才能像你说的那样做完整备份呢?
-
"命令行中是否有相同的命令?"不,它打印:错误:无法找到或加载主类 org.apache.derby.tools.dblook
标签: java database export derby