mirror of
https://github.com/Microsoft/sql-server-samples.git
synced 2025-12-08 14:58:54 +00:00
adding conditions for Azure DB
This commit is contained in:
+20
-17
@@ -82,7 +82,9 @@ DECLARE @PrimaryKeyColumn nvarchar(max) = N'';
|
||||
|
||||
SET @SQL = N'';
|
||||
|
||||
SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
-- when not using Azure DB, add create database statement
|
||||
IF SERVERPROPERTY('EngineEdition') != 5
|
||||
SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
+ N'IF EXISTS(SELECT 1 FROM sys.databases WHERE name = N''WideWorldImporters'')' + @CrLf
|
||||
+ N'BEGIN' + @CrLf
|
||||
+ N' ALTER DATABASE WideWorldImporters SET SINGLE_USER WITH ROLLBACK IMMEDIATE;' + @CrLf
|
||||
@@ -112,25 +114,26 @@ SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
+ N' SIZE = 100MB,' + @CrLf
|
||||
+ N' MAXSIZE = UNLIMITED,' + @CrLf
|
||||
+ N' FILEGROWTH = 64MB' + @CrLf
|
||||
+ N')' + @CrLf
|
||||
+ N'COLLATE Latin1_General_100_CI_AS;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImporters SET RECOVERY SIMPLE;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImporters SET AUTO_UPDATE_STATISTICS_ASYNC ON;' + @CrLf + @GO
|
||||
+ N'ALTER AUTHORIZATION ON DATABASE::WideWorldImporters to sa;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImporters' + @CrLf
|
||||
+ N'SET QUERY_STORE' + @CrLf
|
||||
+ N'(' + @CrLf
|
||||
+ @Indent + N'OPERATION_MODE = READ_WRITE,' + @CrLf
|
||||
+ @Indent + N'CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30),' + @CrLf
|
||||
+ @Indent + N'DATA_FLUSH_INTERVAL_SECONDS = 3000,' + @CrLf
|
||||
+ @Indent + N'MAX_STORAGE_SIZE_MB = 500,' + @CrLf
|
||||
+ @Indent + N'INTERVAL_LENGTH_MINUTES = 15,' + @CrLf
|
||||
+ @Indent + N'SIZE_BASED_CLEANUP_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'QUERY_CAPTURE_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'MAX_PLANS_PER_QUERY = 1000' + @CrLf
|
||||
+ N');' + @CrLf + @GO
|
||||
+ N'ALTER AUTHORIZATION ON DATABASE::WideWorldImporters to sa;' + @CrLf + @GO
|
||||
+ N'USE WideWorldImporters;' + @CrLf + @GO;
|
||||
|
||||
SET @SQL += N'ALTER DATABASE CURRENT COLLATE Latin1_General_100_CI_AS;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT SET RECOVERY SIMPLE;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT SET AUTO_UPDATE_STATISTICS_ASYNC ON;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT' + @CrLf
|
||||
+ N'SET QUERY_STORE' + @CrLf
|
||||
+ N'(' + @CrLf
|
||||
+ @Indent + N'OPERATION_MODE = READ_WRITE,' + @CrLf
|
||||
+ @Indent + N'CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30),' + @CrLf
|
||||
+ @Indent + N'DATA_FLUSH_INTERVAL_SECONDS = 3000,' + @CrLf
|
||||
+ @Indent + N'MAX_STORAGE_SIZE_MB = 500,' + @CrLf
|
||||
+ @Indent + N'INTERVAL_LENGTH_MINUTES = 15,' + @CrLf
|
||||
+ @Indent + N'SIZE_BASED_CLEANUP_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'QUERY_CAPTURE_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'MAX_PLANS_PER_QUERY = 1000' + @CrLf
|
||||
+ N');' + @CrLf + @GO
|
||||
|
||||
DECLARE SchemaList CURSOR FAST_FORWARD READ_ONLY
|
||||
FOR
|
||||
SELECT SchemaName, SchemaDescription
|
||||
|
||||
+20
-1
@@ -4626,19 +4626,38 @@ FOR VALUES (N''20140101'', N''20150101'', N''20160101'', N''20170101'');';
|
||||
|
||||
IF NOT EXISTS (SELECT * FROM sys.partition_schemes WHERE name = N'PS_TransactionDateTime')
|
||||
BEGIN
|
||||
SET @SQL = N'
|
||||
|
||||
-- for Azure DB, assign to primary filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') = 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_TransactionDateTime
|
||||
AS PARTITION PF_TransactionDateTime
|
||||
ALL TO ([PRIMARY]);';
|
||||
-- for other engine editions, assign to user data filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') != 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_TransactionDateTime
|
||||
AS PARTITION PF_TransactionDateTime
|
||||
ALL TO ([USERDATA]);';
|
||||
|
||||
EXECUTE (@SQL);
|
||||
END;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.partition_schemes WHERE name = N'PS_TransactionDate')
|
||||
BEGIN
|
||||
-- for Azure DB, assign to primary filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') = 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_TransactionDate
|
||||
AS PARTITION PF_TransactionDate
|
||||
ALL TO ([PRIMARY]);';
|
||||
-- for other engine editions, assign to user data filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') != 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_TransactionDate
|
||||
AS PARTITION PF_TransactionDate
|
||||
ALL TO ([USERDATA]);';
|
||||
|
||||
EXECUTE (@SQL);
|
||||
END;
|
||||
|
||||
|
||||
+22
-17
@@ -72,7 +72,9 @@ DECLARE @PrimaryKeyColumn nvarchar(max) = N'';
|
||||
|
||||
SET @SQL = N'';
|
||||
|
||||
SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
-- when not using Azure DB, add create database statement
|
||||
IF SERVERPROPERTY('EngineEdition') != 5
|
||||
SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
+ N'IF EXISTS(SELECT 1 FROM sys.databases WHERE name = N''WideWorldImportersDW'')' + @CrLf
|
||||
+ N'BEGIN' + @CrLf
|
||||
+ N' ALTER DATABASE WideWorldImportersDW SET SINGLE_USER WITH ROLLBACK IMMEDIATE;' + @CrLf
|
||||
@@ -102,25 +104,28 @@ SET @SQL += N'USE master;' + @CrLf + @CrLf
|
||||
+ N' SIZE = 100MB,' + @CrLf
|
||||
+ N' MAXSIZE = UNLIMITED,' + @CrLf
|
||||
+ N' FILEGROWTH = 64MB' + @CrLf
|
||||
+ N')' + @CrLf
|
||||
+ N'COLLATE Latin1_General_100_CI_AS;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImportersDW SET RECOVERY SIMPLE;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImporters SET AUTO_UPDATE_STATISTICS_ASYNC ON;' + @CrLf + @GO
|
||||
+ N'ALTER AUTHORIZATION ON DATABASE::WideWorldImportersDW to sa;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE WideWorldImportersDW' + @CrLf
|
||||
+ N'SET QUERY_STORE' + @CrLf
|
||||
+ N'(' + @CrLf
|
||||
+ @Indent + N'OPERATION_MODE = READ_WRITE,' + @CrLf
|
||||
+ @Indent + N'CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30),' + @CrLf
|
||||
+ @Indent + N'DATA_FLUSH_INTERVAL_SECONDS = 3000,' + @CrLf
|
||||
+ @Indent + N'MAX_STORAGE_SIZE_MB = 500,' + @CrLf
|
||||
+ @Indent + N'INTERVAL_LENGTH_MINUTES = 15,' + @CrLf
|
||||
+ @Indent + N'SIZE_BASED_CLEANUP_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'QUERY_CAPTURE_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'MAX_PLANS_PER_QUERY = 1000' + @CrLf
|
||||
+ N');' + @CrLf + @GO
|
||||
+ N'ALTER AUTHORIZATION ON DATABASE::WideWorldImportersDW to sa;' + @CrLf + @GO
|
||||
+ N'USE WideWorldImportersDW;' + @CrLf + @GO;
|
||||
|
||||
|
||||
SET @SQL += N'ALTER DATABASE CURRENT COLLATE Latin1_General_100_CI_AS;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT SET RECOVERY SIMPLE;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT SET AUTO_UPDATE_STATISTICS_ASYNC ON;' + @CrLf + @GO
|
||||
+ N'ALTER DATABASE CURRENT' + @CrLf
|
||||
+ N'SET QUERY_STORE' + @CrLf
|
||||
+ N'(' + @CrLf
|
||||
+ @Indent + N'OPERATION_MODE = READ_WRITE,' + @CrLf
|
||||
+ @Indent + N'CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30),' + @CrLf
|
||||
+ @Indent + N'DATA_FLUSH_INTERVAL_SECONDS = 3000,' + @CrLf
|
||||
+ @Indent + N'MAX_STORAGE_SIZE_MB = 500,' + @CrLf
|
||||
+ @Indent + N'INTERVAL_LENGTH_MINUTES = 15,' + @CrLf
|
||||
+ @Indent + N'SIZE_BASED_CLEANUP_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'QUERY_CAPTURE_MODE = AUTO,' + @CrLf
|
||||
+ @Indent + N'MAX_PLANS_PER_QUERY = 1000' + @CrLf
|
||||
+ N');' + @CrLf + @GO
|
||||
|
||||
|
||||
DECLARE SchemaList CURSOR FAST_FORWARD READ_ONLY
|
||||
FOR
|
||||
SELECT SchemaName, SchemaDescription
|
||||
|
||||
+9
-1
@@ -1552,7 +1552,15 @@ FOR VALUES (N''20120101'',N''20130101'',N''20140101'', N''20150101'', N''2016010
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.partition_schemes WHERE name = N'PS_Date')
|
||||
BEGIN
|
||||
SET @SQL = N'
|
||||
-- for Azure DB, assign to primary filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') = 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_Date
|
||||
AS PARTITION PF_Date
|
||||
ALL TO ([PRIMARY]);';
|
||||
-- for other engine editions, assign to user data filegroup
|
||||
IF SERVERPROPERTY('EngineEdition') != 5
|
||||
SET @SQL = N'
|
||||
CREATE PARTITION SCHEME PS_Date
|
||||
AS PARTITION PF_Date
|
||||
ALL TO ([USERDATA]);';
|
||||
|
||||
Reference in New Issue
Block a user