Пример #1
0
        internal static string CreateDatabaseScript(string databaseName, string dataFileName, string logFileName, SqlVersion sqlVersion)
        {
            var builder = new SqlDdlBuilder();

            builder.AppendSql("create database ");
            builder.AppendIdentifier(databaseName);
            if (null != dataFileName)
            {
                Debug.Assert(logFileName != null, "must specify log file with data file");
                builder.AppendSql(" on primary ");
                builder.AppendFileName(dataFileName);
                builder.AppendSql(" log on ");
                builder.AppendFileName(logFileName);
            }

            // Set READ_COMMITTED_SNAPSHOT ON, if SQL Server 2005 and up and not SQLAzure.
            if (sqlVersion >= SqlVersion.Sql9)
            {
                builder.AppendNewLine();
                builder.AppendSql("if serverproperty('EngineEdition') <> 5 alter database ");
                builder.AppendIdentifier(databaseName);
                builder.AppendSql(" set read_committed_snapshot on");
            }

            return(builder.unencodedStringBuilder.ToString());
        }
Пример #2
0
        internal static string DropDatabaseScript(string databaseName)
        {
            SqlDdlBuilder sqlDdlBuilder = new SqlDdlBuilder();

            sqlDdlBuilder.AppendSql("drop database ");
            sqlDdlBuilder.AppendIdentifier(databaseName);
            return(sqlDdlBuilder.unencodedStringBuilder.ToString());
        }
Пример #3
0
        private static string SetReadCommittedSnapshotScript(string databaseName)
        {
            SqlDdlBuilder sqlDdlBuilder = new SqlDdlBuilder();

            sqlDdlBuilder.AppendSql("alter database ");
            sqlDdlBuilder.AppendIdentifier(databaseName);
            sqlDdlBuilder.AppendSql(" set read_committed_snapshot on");
            return(sqlDdlBuilder.unencodedStringBuilder.ToString());
        }
Пример #4
0
        private void AppendCreateSchema(string schema)
        {
            this.AppendSql("if (schema_id(");
            this.AppendStringLiteral(schema);
            this.AppendSql(") is null) exec(");
            SqlDdlBuilder sqlDdlBuilder = new SqlDdlBuilder();

            sqlDdlBuilder.AppendSql("create schema ");
            sqlDdlBuilder.AppendIdentifier(schema);
            this.AppendStringLiteral(sqlDdlBuilder.unencodedStringBuilder.ToString());
            this.AppendSql(");");
            this.AppendNewLine();
        }
Пример #5
0
        private void AppendCreateSchema(string schema)
        {
            AppendSql("if (schema_id(");
            AppendStringLiteral(schema);
            AppendSql(") is null) exec(");

            // need to create a sub-command and escape it as a string literal as well...
            var schemaBuilder = new SqlDdlBuilder();

            schemaBuilder.AppendSql("create schema ");
            schemaBuilder.AppendIdentifier(schema);

            AppendStringLiteral(schemaBuilder.unencodedStringBuilder.ToString());
            AppendSql(");");
            AppendNewLine();
        }
Пример #6
0
        internal static string CreateDatabaseScript(string databaseName, string dataFileName, string logFileName)
        {
            var builder = new SqlDdlBuilder();

            builder.AppendSql("create database ");
            builder.AppendIdentifier(databaseName);
            if (null != dataFileName)
            {
                Debug.Assert(logFileName != null, "must specify log file with data file");
                builder.AppendSql(" on primary ");
                builder.AppendFileName(dataFileName);
                builder.AppendSql(" log on ");
                builder.AppendFileName(logFileName);
            }

            return(builder.unencodedStringBuilder.ToString());
        }
Пример #7
0
        internal static string CreateDatabaseScript(
            string databaseName,
            string dataFileName,
            string logFileName)
        {
            SqlDdlBuilder sqlDdlBuilder = new SqlDdlBuilder();

            sqlDdlBuilder.AppendSql("create database ");
            sqlDdlBuilder.AppendIdentifier(databaseName);
            if (dataFileName != null)
            {
                sqlDdlBuilder.AppendSql(" on primary ");
                sqlDdlBuilder.AppendFileName(dataFileName);
                sqlDdlBuilder.AppendSql(" log on ");
                sqlDdlBuilder.AppendFileName(logFileName);
            }
            return(sqlDdlBuilder.unencodedStringBuilder.ToString());
        }