日期:2014-05-18  浏览次数:20966 次

C#程序启动SQL2005数据库
就是用VS2005软件,已程序形式启动SQL数据库,你要用数据库时一般都是要先启动数据库的吗,就是我不要用手动启动数据库,用C#程序启动(第三方启动),这样的程序代码怎么写啊???谢谢各位大侠帮助!

------解决方案--------------------
用SQLDMO来实现吧
SQLDMO.SQLServer _server =new SQLDMO.SQLServerClass();
_server.Start(true,"服务器名用户名","密码");
------解决方案--------------------
C# code
Process p = new Process();
            p.StartInfo.FileName = "cmd.exe ";
            p.StartInfo.Arguments = "/k net start mssqlserver";
            p.Start();

            p.Close();

------解决方案--------------------
C# code

Process myProcess = new Process();
            myProcess.StartInfo.FileName = "cmd.exe ";//DOS控制平台 
            myProcess.StartInfo.UseShellExecute = false;
            myProcess.StartInfo.CreateNoWindow = true;
            myProcess.StartInfo.RedirectStandardInput = true;
            myProcess.StartInfo.RedirectStandardOutput = true;
            myProcess.StartInfo.RedirectStandardError = true;
            myProcess.Start();
            StreamWriter sIn = myProcess.StandardInput;//标准输入流 
            sIn.AutoFlush = true;
            StreamReader sOut = myProcess.StandardOutput;//标准输入流 
            StreamReader sErr = myProcess.StandardError;//标准错误流 
            sIn.Write("net start mssqlserver" + System.Environment.NewLine);//DOS控制平台上的命令 
            sIn.Write("exit " + System.Environment.NewLine);//DOS控制平台上的命令 
            string s = sOut.ReadToEnd();//读取执行DOS命令后输出信息 
            string er = sErr.ReadToEnd();//读取执行DOS命令后错误信息 
            Console.WriteLine(s);
            Console.WriteLine(er);
            if (myProcess.HasExited == false)
            {
                myProcess.Kill();
            }
            sIn.Close();
            sOut.Close();
            sErr.Close();
            myProcess.Close();