通过OSQL命令执行SQL SERVER批SQL

系统 1704 0
通过System.Data.SqlClient命名空间只能执行单条SQL,或多个内容中间用;分开,不能执行类似等命令,有没有一种方法能类似查询分析器一样执行一些批命令呢,答案是通过OSQL来执行。
OSQL详细用法: http://technet.microsoft.com/zh-cn/library/ms162806.aspx
通地进程来调用:
     ///   <summary>
        
///  执行OSQL命令
        
///   </summary>

         public   static    void  ExcuteOsqlCmd( string  cmd,  string  errorFile,  string  filePath)
        
{
            System.Diagnostics.Process p 
=   new  System.Diagnostics.Process();

            p.StartInfo.FileName 
=   " osql " ;
            p.StartInfo.Arguments 
=  cmd;
            p.StartInfo.UseShellExecute 
=   false ;

            p.StartInfo.RedirectStandardError 
=   true ;
            p.StartInfo.CreateNoWindow
= true ;
            p.Start();
            p.WaitForExit();
            
// p.Close();
             int  exitCode  =  p.ExitCode;
            
if  (exitCode  !=   0 )
            
{
                StreamReader sr 
=   new  StreamReader(errorFile, System.Text.Encoding.Default);
                
string  all  =  sr.ReadToEnd();
                sr.Close();
                
// ExcuteOtherCmd(string.Format("notepad \"{0}\"", errorFile));
                 throw   new  StepException(all);
            }


        }
调用如下:
string comm = string.Format(" -U {5} -P {0} -S {1} -d {2} -b -e  -i \"{3}\" -o \"{4}\"", pass,
                                         conn.DataSource,
                                         conn.Database,
                                         FilePath, errorFile,user);
Process.ExcuteOsqlCmd(comm, errorFile, FilePath);//直接执行一个SQL文件,路径为FilePath



通过OSQL命令执行SQL SERVER批SQL


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论