java - 来自java的expdp命令
问题描述
我必须使用expdp
命令从 java 中导出 oracle 表导出和导入转储文件。
形成 cmd 它按预期工作。但是当我从 java 做同样的事情时,有两个问题:
- 如果 expdp 命令有 include 关键字,那么它会显示语法错误。
- 如果 expdp 命令没有 include 关键字它可以工作但没有返回状态,即使转储已经导出并完成,程序也会继续运行。
我正在使用 java Runtime.getRuntime().exec
。它等待waitFor
返回方法。
请任何人这样做或有任何想法请帮助。
解决方案
尝试以下操作:
Runtime.getRuntime().exec("cmd /C C:\\oraclexe\\app\\oracle\\product\\11.2.0\\server\\bin\\expdp.exe SYSTEM/oracle@xe DIRECTORY=backupxe DUMPFILE=dbname.dmp SCHEMAS=dbname OWNER=SYSTEM");