wix installer create database if not exists
public static ActionResult CreateDatabaseXyz (Session session)
{
try
{
var builder = new SqlConnectionStringBuilder
{
DataSource = session["DATABASE_SERVER"],
InitialCatalog = "master",
ConnectTimeout = 5
};
if (session["DATABASE_LOGON_TYPE"] != "DatabaseIntegratedAuth")
{
builder.UserID = session["DATABASE_USERNAME"];
builder.Password = session["DATABASE_PASSWORD"];
}
else
{
builder.IntegratedSecurity = true;
}
SqlCommand cmd = null;
using (var connection = new SqlConnection(builder.ConnectionString))
{
connection.Open();
using (cmd = new SqlCommand($"If(db_id(N'{session["DATABASE_NAME"]}') IS NULL) CREATE DATABASE [{session["DATABASE_NAME"]}]", connection))
{
cmd.ExecuteNonQuery();
}
}
session.Log("VerifySqlConnection: Ende");
}
catch (Exception ex)
{
session.Log("VerifySqlConnection: exception: {0}", ex.Message);
throw;
}
return ActionResult.Success;
}