请问如何使用c#执行.sql脚本文件

如何使用c#执行.sql脚本文件

我确信这个问题已经被回答了,但是我无法用搜索工具找到答案。

使用c#,我想运行一个.sql文件。SQL文件包含多个SQL语句,其中一些语句被分割成多行。我试着读取文件并尝试使用ODP.NET执行文件.然而,我不认为ExecutenonQuery真的是为了实现这个目的而设计的。

所以我试着用sqlplus产卵.但是,除非我生成的进程将UseShellExecute设置为真正的sqlplus,否则将挂起,永远不会退出。下面是不起作用的代码。

Process p = new Process();p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "sqlplus";p.StartInfo.Arguments = string.Format("xx/xx@{0} @{1}", in_database, s);
p.StartInfo.CreateNoWindow = true;bool started = p.Start();p.WaitForExit();

WaitForExit永远不会回来.。除非我把UseShellExecute设定为真。UseShellExecute的一个副作用是无法捕获重定向输出。



青春有我
浏览 421回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP