首页 > 解决方案 > 在 Java 中使用“Sqlldr”获取异常无法运行程序“sqlldr”:CreateProcess error=2,系统找不到指定的文件

问题描述

线程“main”java.io.IOException 中的异常:无法运行程序“sqlldr”:CreateProcess 错误 = 2,系统无法在 java.lang.Runtime 的 java.lang.ProcessBuilder.start(未知来源)中找到指定的文件。 exec(Unknown Source) 我需要为使用 sqlloader 的 java 和 oracle 做任何路径设置吗

独立Java代码:

public class SqlLoader{

public static void main(String[] args) throws IOException {

  String sqlldrCmd = "sqlldr " + userName + "/" + password + "@"
            + dbname + "  CONTROL=" + ctlFile + " LOG=" + logFile;
    
        Runtime rt = Runtime.getRuntime();
        Process proc = rt.exec(sqlldrCmd);
}
}

.ctl 文件:

将文件'input.csv'中的数据加载到表中以“,”结尾的表
名字段中,尾随NULLCOLS(ID,名称,ACTIVE_DATE,EXPIRE_DATE,)

example.csv ID,名称 1,abc

标签: javaoracle

解决方案


推荐阅读