Ejemplo n.º 1
0
        public static void CreateDB(DBEnvironments environment)
        {
            string dbName = GetDatabaseName(environment);

            if (IsExists(environment, dbName))
            {
                MessageOut("{0} already exists", dbName);
                return;
            }

            // Create Connection String from Configuration File
            string sqlConStr = BuildConnectionString(environment, "master");

            MessageOut("in {0}", sqlConStr);

            // CREATE DATABASE in context of master db
            string sqlQuery = string.Format("CREATE DATABASE {0}; \r\n GO", dbName);

            SqlScriptHelper.ExecuteScript(sqlQuery, sqlConStr);

            // Create schema_version table
            sqlConStr = BuildConnectionString(environment, dbName);
            MessageOut("in {0}", sqlConStr);
            SqlScriptHelper.ExecuteScriptFromEmbeddedResource("BananaCoding.Tools.Database.DBScripts.create_schema.sql", sqlConStr);
        }
Ejemplo n.º 2
0
        public static void DeleteDB(DBEnvironments environment)
        {
            string dbName = GetDatabaseName(environment);

            if (!IsExists(environment, dbName))
            {
                MessageOut("{0} not found", dbName);
                return;
            }

            // Create Connection String from Configuration File
            string sqlConStr = BuildConnectionString(environment, "master");

            MessageOut("in {0}", sqlConStr);

            // Uninstall ASP.NET Membership table
            // No need because we can delete just the database
            // SqlServices.Uninstall(dbName, SqlFeatures.All, sqlConStr);

            // Single user to cut current connections.
            string sqlQuery = string.Format("ALTER DATABASE {0} SET SINGLE_USER WITH ROLLBACK IMMEDIATE; \r\n GO", dbName);

            SqlScriptHelper.ExecuteScript(sqlQuery, sqlConStr);

            // DROP DATABASE in context of master db
            sqlQuery = string.Format("DROP DATABASE {0}; \r\n GO", dbName);
            SqlScriptHelper.ExecuteScript(sqlQuery, sqlConStr);
        }
Ejemplo n.º 3
0
        public static void GrantPermission(DBEnvironments environment, string userToGrant)
        {
            string dbName = GetDatabaseName(environment);

            // Create Connection String from Configuration File
            string sqlConStr = BuildConnectionString(environment, dbName);

            MessageOut("in {0}", sqlConStr);

            userToGrant = userToGrant.Replace("NT_", "NT ").Replace("NETWORK_", "NETWORK ");

            // Grant DATABASE in context of master db
            string sqlQuery = SqlScriptHelper.LoadScriptFromEmbeddedResource("BananaCoding.Tools.Database.DBScripts.grant_permission.sql");

            sqlQuery = sqlQuery.Replace("[DBNAME]", dbName);
            sqlQuery = sqlQuery.Replace("[DBUSER]", userToGrant);
            SqlScriptHelper.ExecuteScript(sqlQuery, sqlConStr);
            MessageOut("Grant Permission '{0}' on {1}", userToGrant, dbName);
        }