首页 >> C#.NET >> 正文
在.net执行sql脚本的简单实现
来源:Dotnet频道 作者:采集 时间:2008-3-31

    看到csdn社区经常有人问在.net中如果执行sql脚本,下面是使用C#调用cmd来执行osql实现脚本的执行。

using System;

using System.Data;

using System.Collections;

using System.Xml;

using System.IO;

using System.Text;

using System.Diagnostics;

namespace ZZ

{
         public class ZZConsole

         {

                   [STAThread]

                   static void Main(string[] args)

                   {

                            string sqlQuery = "osql.exe /uSa /p123 /s192.192.132.229 /dNorthWind /i yoursql.sql";

                            string strRst = ExeCommand(sqlQuery);

                            Console.WriteLine(strRst);

                            Console.ReadLine();

                   }

                   public static string ExeCommand(string commandText)

                   {

                            Process p = new Process();

                            p.StartInfo.FileName = "cmd.exe";

                            p.StartInfo.UseShellExecute = false;

                            p.StartInfo.RedirectStandardInput = true;

                            p.StartInfo.RedirectStandardOutput = true;

                            p.StartInfo.RedirectStandardError = true;

                            p.StartInfo.CreateNoWindow = true;

                            string strOutput = null;

                            try

                            {

                                     p.Start();

                                     p.StandardInput.WriteLine(commandText);

                                     p.StandardInput.WriteLine("exit");

                                     strOutput = p.StandardOutput.ReadToEnd();

                                     p.WaitForExit();

                                     p.Close();

                            }

                            catch(Exception e)

                            {

                                     strOutput = e.Message;

                            }

                            return strOutput;

                   }

         }

}

    对于osql命名的参数如下:

    =====================

  用法: osql              [-U login id]          [-P password]

  [-S server]            [-H hostname]          [-E trusted connection]

  [-d use database name] [-l login timeout]     [-t query timeout]

  [-h headers]           [-s colseparator]      [-w columnwidth]

  [-a packetsize]        [-e echo input]        [-I Enable Quoted Identifiers]

  [-L list servers]      [-c cmdend]            [-D ODBC DSN name]

  [-q "cmdline query"]   [-Q "cmdline query" and exit]

  [-n remove numbering]  [-m errorlevel]

  [-r msgs to stderr]    [-V severitylevel]

  [-i inputfile]         [-o outputfile]

  [-p print statistics]  [-b On error batch abort]

  [-X[1] disable commands [and exit with warning]]

  [-O use Old ISQL behavior disables the following]

  [-? show syntax summary]

    上面程序是我以前在csdn回答问题时写的,由于最近比较忙,所以偷懒了。

相关新闻
相关评论
 
评论表单加载中...
 
C#.NET文章

 在Visual C++应

 编辑:admin

 时间:2008-3-10


   .NET Framework 中多语言支持的实现-.NET Framework
   将Eiffel系统集成到.NET Framework中-.NET Framework
   04年五种常用RAD的测验比较(1)-.NET Framework
   04年五种常用RAD的测验比较(2)-.NET Framework
   04年五种常用RAD的测验比较(3)-.NET Framework
最新文章
   .NET Framework 中多语言支持的实现-.NET Framework
   将Eiffel系统集成到.NET Framework中-.NET Framework
   04年五种常用RAD的测验比较(1)-.NET Framework
   04年五种常用RAD的测验比较(2)-.NET Framework
   04年五种常用RAD的测验比较(3)-.NET Framework
总站搜索
搜索
 
热门文章
   oracle数据库文件中的导入\导出
   用Oracle10g列值掩码技术隐藏敏感数据
   VB程序中用ADO对象动态创建数据库和表-VB.NET
   用VB6写简单程序 让电骡自动关机-VB.NET
   使用.NET2.0编写COM组件供VB调用-VB.NET
   VB.NET:键盘控制焦点移动-VB.NET
   用VB.NET绘制GDI图形-VB.NET
   vb.net中应用 ArrayList 实例-VB.NET
 
推荐文章
ASP.NET中的状态管理-ASP.NET
VC、IE、ASP环境下打印、预备的完美解决方案
oracle数据库文件中的导入\导出
VB.NET中快速访问注册表技巧-VB.NET
在vb中实现超连接的方法!和直接发邮件-VB.NET
用VB做realplayer播放列表-VB.NET
在VB.NET中如何实现和利用SortedLists-VB.NET
利用VB.NET Stopwatch对象记录时间-VB.NET
成都古羌科技有限公司版权所有: Copyright@2007-2010 ,ALL Rights Reserved 蜀ICP备07017240号