如何在c#中运行命令SQLLoader Oracle

时间:2011-03-10 09:13:32

标签: c#

如何在c#中运行命令SQLLoader Oracle。我尝试使用我的sourcode来运行这个SQLLoader,但没有任何反应,并且错误“没有进程与此对象相关联。”。请告诉我如何解决它。谢谢。 这是我的代码:

        System.Diagnostics.Process process1;
        process1 = new System.Diagnostics.Process();
        process1.EnableRaisingEvents = false;

        string strCmdLine;
        strCmdLine = @"/C SQLLDR XL/secreat@O11G CONTROL=E:\APT\LoadXL.ctl";
        System.Diagnostics.Process.Start("CMD.exe", strCmdLine);
        process1.WaitForExit();
        process1.Close();

2 个答案:

答案 0 :(得分:1)

您必须使用变量process1开始您的流程,如下所示:

process1.StartInfo.Arguments = strCmdLine;
process1.StartInfo.FileName = "CMD.exe";
process1.Start();

答案 1 :(得分:0)

这对我有用

var p = new Process()
{
    StartInfo = new ProcessStartInfo("sqlldr")
    {
        UseShellExecute = false,
        WorkingDirectory = opts.WorkingDirectory,
        Arguments = "control="control.ctl" userid=usr/pass@XE log="data.csv.log" data="data.csv" bad="data.csv.bad"
     }
};
p.Start();