C# 如何在c中运行命令SQLLoader Oracle#
如何在c#中运行命令SQLLoader Oracle。我尝试使用sourcode来运行这个SQLLoader,但什么也没有发生,错误是“没有进程与这个对象关联”。请告诉我如何修理它。谢谢 这是我的代码:C# 如何在c中运行命令SQLLoader Oracle#,c#,C#,如何在c#中运行命令SQLLoader Oracle。我尝试使用sourcode来运行这个SQLLoader,但什么也没有发生,错误是“没有进程与这个对象关联”。请告诉我如何修理它。谢谢 这是我的代码: System.Diagnostics.Process process1; process1 = new System.Diagnostics.Process(); process1.EnableRaisingEvents = false;
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();
您必须使用变量
process1
启动流程,如下所示:
process1.StartInfo.Arguments = strCmdLine;
process1.StartInfo.FileName = "CMD.exe";
process1.Start();
这对我有用
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();
谢谢你的回答,但是当我把上面的脚本放到我的代码中时,没有发生,进程SQLLoader也没有运行。我建议你把命令行放到一个批处理文件中,在末尾放一个
pause
命令,然后启动该批处理文件。这样,您就可以检查输出中是否有任何错误消息。谢谢您的建议,但我是用c#编写的。为什么我要用ipconfig运行替换该命令。无法在c中运行进程SQLLOader,我的建议是从c启动批处理文件。我想,它很简单,找不到“sqlldr”。我也面临着类似的问题。我必须在cmd文件中编写de命令,然后:process1.StartInfo.FileName=“file.cmd”代码>