Optimize a script

The following is an example of script optimization:

USE [master]

GO

 

/****** Object:  Database [tpcc]    Script Date: 2019/7/4 17:34:15 ******/

CREATE DATABASE [tpcc]

 CONTAINMENT = NONE

 ON  PRIMARY

( NAME = N'tpcc', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\tpcc.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'1', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\1.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'10', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\10.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'11', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\11.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'12', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\12.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'13', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\13.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'14', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\14.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'15', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\15.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'2', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\2.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'3', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\3.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'4', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\4.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'5', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\5.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'6', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\6.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'7', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\7.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'8', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\8.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ),

( NAME = N'9', FILENAME = N'F:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\9.mdf' , SIZE = 6242880KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )

 LOG ON

( NAME = N'tpcc_log', FILENAME = N'E:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\tpcc_log.ldf' , SIZE = 37920768KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )

GO

 

 

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [tpcc].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

 

ALTER DATABASE [tpcc] SET ANSI_NULL_DEFAULT OFF

GO

 

ALTER DATABASE [tpcc] SET ANSI_NULLS OFF

GO

 

ALTER DATABASE [tpcc] SET ANSI_PADDING OFF

GO

 

ALTER DATABASE [tpcc] SET ANSI_WARNINGS OFF

GO

 

ALTER DATABASE [tpcc] SET ARITHABORT OFF

GO

 

ALTER DATABASE [tpcc] SET AUTO_CLOSE OFF

GO

 

ALTER DATABASE [tpcc] SET AUTO_SHRINK OFF

GO

 

ALTER DATABASE [tpcc] SET AUTO_UPDATE_STATISTICS ON

GO

 

ALTER DATABASE [tpcc] SET CURSOR_CLOSE_ON_COMMIT OFF

GO

 

ALTER DATABASE [tpcc] SET CURSOR_DEFAULT  GLOBAL

GO

 

ALTER DATABASE [tpcc] SET CONCAT_NULL_YIELDS_NULL OFF

GO

 

ALTER DATABASE [tpcc] SET NUMERIC_ROUNDABORT OFF

GO

 

ALTER DATABASE [tpcc] SET QUOTED_IDENTIFIER OFF

GO

 

ALTER DATABASE [tpcc] SET RECURSIVE_TRIGGERS OFF

GO

 

ALTER DATABASE [tpcc] SET  DISABLE_BROKER

GO

 

ALTER DATABASE [tpcc] SET AUTO_UPDATE_STATISTICS_ASYNC OFF

GO

 

ALTER DATABASE [tpcc] SET DATE_CORRELATION_OPTIMIZATION OFF

GO

 

ALTER DATABASE [tpcc] SET TRUSTWORTHY OFF

GO

 

ALTER DATABASE [tpcc] SET ALLOW_SNAPSHOT_ISOLATION OFF

GO

 

ALTER DATABASE [tpcc] SET PARAMETERIZATION SIMPLE

GO

 

ALTER DATABASE [tpcc] SET READ_COMMITTED_SNAPSHOT OFF

GO

 

ALTER DATABASE [tpcc] SET HONOR_BROKER_PRIORITY OFF

GO

 

ALTER DATABASE [tpcc] SET RECOVERY SIMPLE

GO

 

ALTER DATABASE [tpcc] SET  MULTI_USER

GO

 

ALTER DATABASE [tpcc] SET PAGE_VERIFY CHECKSUM 

GO

 

ALTER DATABASE [tpcc] SET DB_CHAINING OFF

GO

 

ALTER DATABASE [tpcc] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )

GO

 

ALTER DATABASE [tpcc] SET TARGET_RECOVERY_TIME = 6000 SECONDS

GO

 

ALTER DATABASE [tpcc] SET DELAYED_DURABILITY = DISABLED

GO

 

ALTER DATABASE [tpcc] SET QUERY_STORE = OFF

GO

 

USE [tpcc]

GO

 

ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = OFF;

GO

 

ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 0;

GO

 

ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = ON;

GO

 

ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = OFF;

GO

 

ALTER DATABASE [tpcc] SET  READ_WRITE

GO