Beispiel #1
0
    /// <summary>
    /// Creates new database.
    /// </summary>
    private bool CreateDB()
    {
        bool continueSeparation = true;

        if (databaseDialog.CreateNewChecked && SqlServerCapabilities.SupportsDatabaseCreation)
        {
            progress.LogMessage(ResHelper.GetString("separationDB.creatingDB"), MessageTypeEnum.Info, false);

            var connectionString = new SqlConnectionStringBuilder(databaseDialog.ConnectionString);
            connectionString.InitialCatalog = "";

            try
            {
                using (new CMSConnectionScope(connectionString.ConnectionString, false))
                {
                    SqlInstallationHelper.CreateDatabase(databaseDialog.NewDatabaseName, connectionString.ConnectionString, null);
                }
            }
            catch (Exception ex)
            {
                string message = ResHelper.GetFileString("Intaller.LogErrorCreateDB") + " " + ex.Message;
                progress.LogMessage(message, MessageTypeEnum.Error, false);
                continueSeparation = false;
            }
        }
        return(continueSeparation);
    }
    private bool CreateDatabase(string collation)
    {
        try
        {
            var message = $"{ResHelper.GetFileString("Installer.LogCreatingDatabase")} {databaseDialog.NewDatabaseName}";
            AddResult(message);
            LogProgressState(LogStatusEnum.Info, message);

            var connectionString = ConnectionHelper.BuildConnectionString(AuthenticationType, userServer.ServerName, String.Empty, userServer.DBUsername, Password, SqlInstallationHelper.DB_CONNECTION_TIMEOUT);

            // Use default collation, if none specified
            if (String.IsNullOrEmpty(collation))
            {
                collation = DatabaseHelper.DatabaseCollation;
            }

            if (!DBCreated)
            {
                SqlInstallationHelper.CreateDatabase(databaseDialog.NewDatabaseName, connectionString, collation);
            }

            return(true);
        }
        catch (Exception ex)
        {
            DisplayLog = true;
            var message = $"{ResHelper.GetFileString("Intaller.LogErrorCreateDB")} {ex.Message}";
            AddResult(message);
            LogProgressState(LogStatusEnum.Error, message);
        }

        return(false);
    }