C# 调用*.sql第二种

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]
具体参考 
http://www.588188.com/netbook/sqlserver2000/coprompt/cp_osql_1wxl.htm
或者sql server 2000帮助文档
posted @ 2008-12-30 14:36  80' 开发  阅读(173)  评论(0编辑  收藏  举报