Пример #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());
        }