【问题标题】:Install SQL Server 2008 R2 Express using C#使用 C# 安装 SQL Server 2008 R2 Express
【发布时间】:2015-02-20 10:29:54
【问题描述】:
我需要静默安装 SQL Server 2008 R2 Express。我想为此使用 C#,但找不到可行的解决方案。
有人可以为上述场景发布一个有效的 C# 代码吗?
【问题讨论】:
标签:
c#
installation
sql-server-2008r2-express
【解决方案1】:
按照此处的文档,它应该像组装命令行一样简单: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");
【解决方案2】:
以下代码适用于 mee..
{
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"