从c#执行oracle spool命令,该命令被写成.sql文件(例如:spool.sql),就像使用OracleCommand执行任何oracle查询一样
我有一个文本文件,比如“createfeed.sql”,其中包含pl/sql中使用的从c#执行oracle spool命令,该命令被写成.sql文件(例如:spool.sql),就像使用OracleCommand执行任何oracle查询一样,c#,asp.net,oracle,plsql,C#,Asp.net,Oracle,Plsql,我有一个文本文件,比如“createfeed.sql”,其中包含pl/sql中使用的set命令,如: set pagesize, set linesize, blah, blah, blah, 然后是一个spool命令,该命令将创建一个文件 所以我想从C#执行这个createfeed.sql。当我尝试将文件名作为OracleCommand参数时,它给出的是错误,因为它没有这样做 那么,有没有更好的方法在C#中执行这个createfeed.sql脚本呢 我发现的一种方法是使用“进程”启动“p
set
命令,如:
set pagesize,
set linesize,
blah,
blah,
blah,
然后是一个spool命令,该命令将创建一个文件
所以我想从C#执行这个createfeed.sql。当我尝试将文件名作为OracleCommand参数时,它给出的是错误,因为它没有这样做
那么,有没有更好的方法在C#中执行这个createfeed.sql脚本呢
我发现的一种方法是使用“进程”启动“pl/sql”,然后执行脚本,但我无法成功执行脚本。您可以尝试以下方法:
string myCommand = PSQLCommand;
//This would be the location of your file
string myArguments = "PSQLArugments";
Process.Start(myCommand, myArguments);
So your command would look like psql.exe \i "Path of createfeed.sql"
myCommand would = psql.exe (the full path to your executable)
myArguments = @"\i \pathToCreateFeed.sql"
psql.exe
是PostgreSQL的前端,与Oracle无关。但是我看到了一些代码片段,尽管它们不工作,但它们使用process object调用plsql.exe,然后执行命令?