使用 C# 安装 SQL Server 2008 R2 Express

Install SQL Server 2008 R2 Express using C#

我处于需要静默安装 SQL Server 2008 R2 Express 的情况。我想为此使用 C#,但找不到有效的解决方案。

有人可以 post 一个适用于上述场景的 C# 代码吗?

按照此处的文档组装命令行应该很简单:https://msdn.microsoft.com/en-us/library/ms144259(v=sql.105).aspx

然后调用Process.Start("Setup.exe /q /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /IACCEPTSQLSERVERLICENSETERMS");

以下代码对我有用..

{
    System.Diagnostics.Process p = new System.Diagnostics.Process();
    p.StartInfo = new System.Diagnostics.ProcessStartInfo(@"c:\temp\SQLEXPR_x86_ENU.exe",
    @"/q /ACTION=Install /FEATURES=SQL /INSTANCENAME=SQLSILENT /SQLSVCSTARTUPTYPE=Automatic /SQLSVCACCOUNT=""NT AUTHORITY\NETWORK SERVICE"" /SQLSYSADMINACCOUNTS=""BUILTIN\Administrators"" /AGTSVCACCOUNT=""NT AUTHORITY\Network Service"" /ADDCURRENTUSERASSQLADMIN=true /SECURITYMODE=SQL /SAPWD=""Password@123""");
    p.StartInfo.UseShellExecute = false;
    p.Start();
    p.WaitForExit();
    p.Close();
}

仅用于 windows 身份验证删除 /SECURITYMODE=SQL /SAPWD="Password@123"