C#调用BAT批处理文件连接sqlplus批量执行sql语句
用C#调用pl.bat,pl.bat里调用sqlplus执行一些sql语句
pl.bat内容:
sqlplus hyh/hyh@D_192.168.1.220 @runSql.sql
runSql.sql内容:
--写SQL语句
SQL code
insert into imgs values(8,'hyh','hyh');
insert into imgs values(9,'hyh','hyh');
insert into imgs values(10,'hyh','hyh');
insert into imgs values(11,'hyh','hyh');
--提交
commit;
--去掉下边注释可以执行完让DOS界面停下来
--PAUSE 按任意键继续......
--退出
exit
C#调用代码:
C# code
Process process = new Process();
process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = Server.MapPath("sqlplus/pl.bat");
process.StartInfo.CreateNoWindow = true;
process.Start();
问题:为什么用鼠标双击pl.bat可以完全正确执行,数据也可以插入数据库,但是C#调用时却停在了:
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SP2-0310: 无法打开文件"runSql.sql"
SQL>
请各位多多指教!有什么办法在C#中调用pl.bat时,顺利执行runSql.sql里的内容,而不要停在这个地方!
(我这么做的目的是:做一个web安装程序,内含的sql脚本,用户点击exe文件时,自动搭起网站(已做好),把runSql.sql中的用户对象建入oralce数据库,一键完成形式的,虽然有些不足但还在完善)
------解决方案--------------------
学会google吧
------解决方案--------------------路径问题。。。