822 lines
22 KiB
Transact-SQL
822 lines
22 KiB
Transact-SQL
/*
|
|
CPXV2의 배포 스크립트
|
|
|
|
이 코드는 도구를 사용하여 생성되었습니다.
|
|
파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
|
변경 내용이 손실됩니다.
|
|
*/
|
|
|
|
GO
|
|
SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON;
|
|
|
|
SET NUMERIC_ROUNDABORT OFF;
|
|
|
|
|
|
GO
|
|
/*
|
|
:setvar DatabaseName "CPXV2"
|
|
:setvar DefaultFilePrefix "CPXV2"
|
|
:setvar DefaultDataPath ""
|
|
:setvar DefaultLogPath ""
|
|
*/
|
|
|
|
GO
|
|
:on error exit
|
|
GO
|
|
/*
|
|
SQLCMD 모드가 지원되지 않으면 SQLCMD 모드를 검색하고 스크립트를 실행하지 않습니다.
|
|
SQLCMD 모드를 설정한 후에 이 스크립트를 다시 사용하려면 다음을 실행합니다.
|
|
SET NOEXEC OFF;
|
|
*/
|
|
:setvar __IsSqlCmdEnabled "True"
|
|
GO
|
|
IF N'$(__IsSqlCmdEnabled)' NOT LIKE N'True'
|
|
BEGIN
|
|
PRINT N'이 스크립트를 실행하려면 SQLCMD 모드를 사용하도록 설정해야 합니다.';
|
|
SET NOEXEC ON;
|
|
END
|
|
|
|
|
|
GO
|
|
USE [master];
|
|
|
|
|
|
GO
|
|
|
|
IF (DB_ID(N'$(DatabaseName)') IS NOT NULL)
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
|
|
DROP DATABASE [$(DatabaseName)];
|
|
END
|
|
|
|
GO
|
|
PRINT N'$(DatabaseName) 데이터베이스를 만드는 중...'
|
|
GO
|
|
CREATE DATABASE [$(DatabaseName)] COLLATE Korean_Wansung_CI_AS
|
|
GO
|
|
USE [$(DatabaseName)];
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET ANSI_NULLS ON,
|
|
ANSI_PADDING ON,
|
|
ANSI_WARNINGS ON,
|
|
ARITHABORT ON,
|
|
CONCAT_NULL_YIELDS_NULL ON,
|
|
NUMERIC_ROUNDABORT OFF,
|
|
QUOTED_IDENTIFIER ON,
|
|
ANSI_NULL_DEFAULT ON,
|
|
CURSOR_DEFAULT LOCAL,
|
|
RECOVERY SIMPLE,
|
|
CURSOR_CLOSE_ON_COMMIT OFF,
|
|
AUTO_CREATE_STATISTICS ON,
|
|
AUTO_SHRINK OFF,
|
|
AUTO_UPDATE_STATISTICS ON,
|
|
RECURSIVE_TRIGGERS OFF
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET ALLOW_SNAPSHOT_ISOLATION OFF;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET READ_COMMITTED_SNAPSHOT OFF
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET AUTO_UPDATE_STATISTICS_ASYNC OFF,
|
|
PAGE_VERIFY NONE,
|
|
DATE_CORRELATION_OPTIMIZATION OFF,
|
|
DISABLE_BROKER,
|
|
PARAMETERIZATION SIMPLE,
|
|
SUPPLEMENTAL_LOGGING OFF
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF IS_SRVROLEMEMBER(N'sysadmin') = 1
|
|
BEGIN
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
EXECUTE sp_executesql N'ALTER DATABASE [$(DatabaseName)]
|
|
SET TRUSTWORTHY OFF,
|
|
DB_CHAINING OFF
|
|
WITH ROLLBACK IMMEDIATE';
|
|
END
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
PRINT N'데이터베이스 설정을 수정할 수 없습니다. 이러한 설정을 적용하려면 SysAdmin이어야 합니다.';
|
|
END
|
|
|
|
|
|
GO
|
|
IF IS_SRVROLEMEMBER(N'sysadmin') = 1
|
|
BEGIN
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
EXECUTE sp_executesql N'ALTER DATABASE [$(DatabaseName)]
|
|
SET HONOR_BROKER_PRIORITY OFF
|
|
WITH ROLLBACK IMMEDIATE';
|
|
END
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
PRINT N'데이터베이스 설정을 수정할 수 없습니다. 이러한 설정을 적용하려면 SysAdmin이어야 합니다.';
|
|
END
|
|
|
|
|
|
GO
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET TARGET_RECOVERY_TIME = 0 SECONDS
|
|
WITH ROLLBACK IMMEDIATE;
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET FILESTREAM(NON_TRANSACTED_ACCESS = OFF),
|
|
CONTAINMENT = NONE
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET AUTO_CREATE_STATISTICS ON(INCREMENTAL = OFF),
|
|
MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = OFF,
|
|
DELAYED_DURABILITY = DISABLED
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET QUERY_STORE (QUERY_CAPTURE_MODE = ALL, DATA_FLUSH_INTERVAL_SECONDS = 900, INTERVAL_LENGTH_MINUTES = 60, MAX_PLANS_PER_QUERY = 200, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 367), MAX_STORAGE_SIZE_MB = 100)
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET QUERY_STORE = OFF
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 0;
|
|
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY;
|
|
ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = OFF;
|
|
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;
|
|
ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = ON;
|
|
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET PARAMETER_SNIFFING = PRIMARY;
|
|
ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = OFF;
|
|
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET QUERY_OPTIMIZER_HOTFIXES = PRIMARY;
|
|
END
|
|
|
|
|
|
GO
|
|
IF EXISTS (SELECT 1
|
|
FROM [master].[dbo].[sysdatabases]
|
|
WHERE [name] = N'$(DatabaseName)')
|
|
BEGIN
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET TEMPORAL_HISTORY_RETENTION ON
|
|
WITH ROLLBACK IMMEDIATE;
|
|
END
|
|
|
|
|
|
GO
|
|
IF fulltextserviceproperty(N'IsFulltextInstalled') = 1
|
|
EXECUTE sp_fulltext_database 'enable';
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[STOR_TestListFile]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[STOR_TestListFile] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[Name] NVARCHAR (64) NOT NULL,
|
|
[TestType] NVARCHAR (8) NOT NULL,
|
|
[Version] NVARCHAR (4) NOT NULL,
|
|
[ProdCode] NVARCHAR (4) NOT NULL,
|
|
[FileName] NVARCHAR (64) NOT NULL,
|
|
[RegDT] DATETIME2 (7) NOT NULL,
|
|
[RegUser] NVARCHAR (32) NOT NULL,
|
|
[UpdateDT] DATETIME2 (7) NOT NULL,
|
|
[UpdateUser] NVARCHAR (32) NOT NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
[Description] NVARCHAR (256) NULL,
|
|
[TestListData] VARBINARY (MAX) NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[STAT_User]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[STAT_User] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[UserID] NVARCHAR (32) NOT NULL,
|
|
[Name] NVARCHAR (32) NOT NULL,
|
|
[Password] NVARCHAR (32) NOT NULL,
|
|
[Dept] NVARCHAR (64) NOT NULL,
|
|
[Email] NVARCHAR (64) NOT NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
[UpdateDT] DATETIME2 (7) NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY],
|
|
UNIQUE NONCLUSTERED ([UserID] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[STAT_TestCode]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[STAT_TestCode] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[TestCode] NVARCHAR (16) NOT NULL,
|
|
[Gate1] NVARCHAR (64) NOT NULL,
|
|
[Gate2] NVARCHAR (64) NOT NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY],
|
|
UNIQUE NONCLUSTERED ([TestCode] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[STAT_Host]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[STAT_Host] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[HostID] NVARCHAR (64) NOT NULL,
|
|
[Section] NVARCHAR (64) NOT NULL,
|
|
[IP] NVARCHAR (15) NOT NULL,
|
|
[TestCode] NVARCHAR (16) NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
[UpdateDT] DATETIME2 (7) NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[PROD_Variant]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[PROD_Variant] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[ProdNo_P] NVARCHAR (32) NOT NULL,
|
|
[RegDT] DATETIME2 (7) NOT NULL,
|
|
[RegUser] NVARCHAR (32) NOT NULL,
|
|
[UpdateDT] DATETIME2 (7) NOT NULL,
|
|
[UpdateUser] NVARCHAR (32) NOT NULL,
|
|
[GroupNo] INT NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
[Description] NVARCHAR (256) NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[UseTLPosition] INT NOT NULL,
|
|
[IsUse] BIT NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[PROD_Release]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[PROD_Release] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[ProdNo_C] NVARCHAR (32) NOT NULL,
|
|
[TestCodeNo] INT NULL,
|
|
[VariantNo] INT NULL,
|
|
[Config] NVARCHAR (32) NOT NULL,
|
|
[RegDT] DATETIME2 (7) NOT NULL,
|
|
[RegUser] NVARCHAR (32) NOT NULL,
|
|
[RegUserComment] NVARCHAR (256) NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[PROD_Group]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[PROD_Group] (
|
|
[No] INT IDENTITY (0, 1) NOT NULL,
|
|
[GroupName] NVARCHAR (128) NOT NULL,
|
|
[ModelName] NVARCHAR (128) NOT NULL,
|
|
[Comment] NVARCHAR (256) NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY],
|
|
UNIQUE NONCLUSTERED ([ModelName] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[HIST_TestListFileVariantList]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[HIST_TestListFileVariantList] (
|
|
[No] BIGINT IDENTITY (0, 1) NOT NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[VariantList] NVARCHAR (2048) NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'인덱스 [dbo].[HIST_TestListFileVariantList].[CSK_HIST_TestListFileVariantList_2]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE NONCLUSTERED INDEX [CSK_HIST_TestListFileVariantList_2]
|
|
ON [dbo].[HIST_TestListFileVariantList]([TestListFileNo] ASC, [No] ASC)
|
|
ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[HIST_TestListFileLatestStepVersion]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[HIST_TestListFileLatestStepVersion] (
|
|
[No] BIGINT IDENTITY (0, 1) NOT NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[LatestStepVersion] INT NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[HIST_TestListFile]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[HIST_TestListFile] (
|
|
[No] BIGINT IDENTITY (0, 1) NOT NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[Name] NVARCHAR (64) NOT NULL,
|
|
[TestListData1] VARBINARY (MAX) NULL,
|
|
[TestListData2] VARBINARY (MAX) NULL,
|
|
[TestListData3] VARBINARY (MAX) NULL,
|
|
[TestListData4] VARBINARY (MAX) NULL,
|
|
[TestListData5] VARBINARY (MAX) NULL,
|
|
[TestListData6] VARBINARY (MAX) NULL,
|
|
[TestListData7] VARBINARY (MAX) NULL,
|
|
[TestListData8] VARBINARY (MAX) NULL,
|
|
[TestListData9] VARBINARY (MAX) NULL,
|
|
[TestListData10] VARBINARY (MAX) NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'인덱스 [dbo].[HIST_TestListFile].[CSK_HIST_TestList_2]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE NONCLUSTERED INDEX [CSK_HIST_TestList_2]
|
|
ON [dbo].[HIST_TestListFile]([TestListFileNo] ASC, [Name] ASC, [No] ASC)
|
|
ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[HIST_TesterSummary]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[HIST_TesterSummary] (
|
|
[No] BIGINT IDENTITY (0, 1) NOT NULL,
|
|
[StationName] NVARCHAR (128) NULL,
|
|
[TestType] NVARCHAR (8) NOT NULL,
|
|
[Version] NVARCHAR (4) NOT NULL,
|
|
[ProdCode] NVARCHAR (4) NOT NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[TestListVariantNo] INT NULL,
|
|
[TestListCntID] NVARCHAR (256) NULL,
|
|
[StepVersion] INT NULL,
|
|
[HostID] NVARCHAR (64) NOT NULL,
|
|
[Section] NVARCHAR (64) NOT NULL,
|
|
[ProdNo_C] NVARCHAR (32) NOT NULL,
|
|
[ProdNo_P] NVARCHAR (32) NOT NULL,
|
|
[Testcode] NVARCHAR (16) NOT NULL,
|
|
[TestListFileName] NVARCHAR (256) NOT NULL,
|
|
[ProductID] NVARCHAR (64) NOT NULL,
|
|
[Result] NVARCHAR (16) NOT NULL,
|
|
[Duration] NVARCHAR (16) NOT NULL,
|
|
[TestDT] DATETIME2 (7) NOT NULL,
|
|
UNIQUE NONCLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'테이블 [dbo].[VRFY_TestListFileRelease]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE TABLE [dbo].[VRFY_TestListFileRelease] (
|
|
[No] BIGINT IDENTITY (0, 1) NOT NULL,
|
|
[TestListFileNo] INT NULL,
|
|
[StepID] BIGINT NOT NULL,
|
|
[Variant] NVARCHAR (32) NOT NULL,
|
|
[Gate] NVARCHAR (128) NOT NULL,
|
|
[Activate] BIT NULL,
|
|
[StepVersion] INT NOT NULL,
|
|
[Enable] BIT NULL,
|
|
[Position] BIGINT NULL,
|
|
[StepDesc] NVARCHAR (2048) NULL,
|
|
[UseFunction] NVARCHAR (2048) NOT NULL,
|
|
[MacroParm] NVARCHAR (2048) NULL,
|
|
[Parm] NVARCHAR (2048) NULL,
|
|
[SpecMin] NVARCHAR (2048) NOT NULL,
|
|
[SpecMax] NVARCHAR (2048) NOT NULL,
|
|
[IsGlobal] BIT NULL,
|
|
[Dim] NVARCHAR (64) NOT NULL,
|
|
[UpdateDT] DATETIME2 (7) NOT NULL,
|
|
PRIMARY KEY CLUSTERED ([No] ASC) ON [PRIMARY]
|
|
) ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'인덱스 [dbo].[VRFY_TestListFileRelease].[CSK_VRFY_Release_2]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE NONCLUSTERED INDEX [CSK_VRFY_Release_2]
|
|
ON [dbo].[VRFY_TestListFileRelease]([TestListFileNo] ASC, [StepID] ASC, [Enable] ASC, [No] ASC)
|
|
ON [PRIMARY];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[STOR_TestListFile]
|
|
ADD DEFAULT (getdate()) FOR [RegDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[STOR_TestListFile]
|
|
ADD DEFAULT (getdate()) FOR [UpdateDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[STAT_User]
|
|
ADD DEFAULT (getdate()) FOR [UpdateDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[STAT_Host]
|
|
ADD DEFAULT (getdate()) FOR [UpdateDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD DEFAULT (getdate()) FOR [RegDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD DEFAULT (getdate()) FOR [UpdateDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD DEFAULT ((0)) FOR [UseTLPosition];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD DEFAULT ((1)) FOR [IsUse];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Release]
|
|
ADD DEFAULT (getdate()) FOR [RegDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TesterSummary]
|
|
ADD DEFAULT ('-') FOR [StationName];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TesterSummary]
|
|
ADD DEFAULT ((-1)) FOR [TestListFileNo];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TesterSummary]
|
|
ADD DEFAULT ((-1)) FOR [TestListVariantNo];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TesterSummary]
|
|
ADD DEFAULT ((-1)) FOR [StepVersion];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TesterSummary]
|
|
ADD DEFAULT (getdate()) FOR [TestDT];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD DEFAULT ((1)) FOR [Activate];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD DEFAULT ((1)) FOR [Enable];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD DEFAULT ('') FOR [StepDesc];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD DEFAULT ((0)) FOR [IsGlobal];
|
|
|
|
|
|
GO
|
|
PRINT N'DEFAULT 제약 조건 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD DEFAULT (getdate()) FOR [UpdateDT];
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD FOREIGN KEY ([GroupNo]) REFERENCES [dbo].[PROD_Group] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD FOREIGN KEY ([TestListFileNo]) REFERENCES [dbo].[STOR_TestListFile] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Release]
|
|
ADD FOREIGN KEY ([TestCodeNo]) REFERENCES [dbo].[STAT_TestCode] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Release]
|
|
ADD FOREIGN KEY ([VariantNo]) REFERENCES [dbo].[PROD_Variant] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TestListFileVariantList]
|
|
ADD FOREIGN KEY ([TestListFileNo]) REFERENCES [dbo].[STOR_TestListFile] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TestListFileLatestStepVersion]
|
|
ADD FOREIGN KEY ([TestListFileNo]) REFERENCES [dbo].[STOR_TestListFile] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[HIST_TestListFile]
|
|
ADD FOREIGN KEY ([TestListFileNo]) REFERENCES [dbo].[STOR_TestListFile] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'외래 키 <이름 없음>을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[VRFY_TestListFileRelease]
|
|
ADD FOREIGN KEY ([TestListFileNo]) REFERENCES [dbo].[STOR_TestListFile] ([No]) ON DELETE SET NULL;
|
|
|
|
|
|
GO
|
|
PRINT N'CHECK 제약 조건 [dbo].[CK_PROD_TestList_UseTLPosition_2]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
ALTER TABLE [dbo].[PROD_Variant]
|
|
ADD CONSTRAINT [CK_PROD_TestList_UseTLPosition_2] CHECK (([UseTLPosition]>=(0) AND [UseTLPosition]<=(10)));
|
|
|
|
|
|
GO
|
|
PRINT N'프로시저 [dbo].[spGetDBList]을(를) 만드는 중...';
|
|
|
|
|
|
GO
|
|
CREATE PROCEDURE [dbo].[spGetDBList]
|
|
|
|
AS
|
|
SELECT name FROM SYS.DATABASES WHERE name LIKE '%CPXV%'
|
|
RETURN 0
|
|
GO
|
|
/*
|
|
배포 후 스크립트 템플릿
|
|
--------------------------------------------------------------------------------------
|
|
이 파일에는 빌드 스크립트에 추가될 SQL 문이 있습니다.
|
|
SQLCMD 구문을 사용하여 파일을 배포 후 스크립트에 포함합니다.
|
|
예: :r .\myfile.sql
|
|
SQLCMD 구문을 사용하여 배포 후 스크립트의 변수를 참조합니다.
|
|
예: :setvar TableName MyTable
|
|
SELECT * FROM [$(TableName)]
|
|
--------------------------------------------------------------------------------------
|
|
*/
|
|
|
|
--CPXV2 STAT_User 추가
|
|
INSERT INTO STAT_User (UserID, Name, Password, Dept, Email, Comment) VALUES ('Admin', 'Admin', 'Kefico!@34', 'Admin', 'systemx2051@gmail.com', 'Administrator');
|
|
GO
|
|
|
|
INSERT INTO STAT_User (UserID, Name, Password, Dept, Email, Comment) VALUES ('SystemX', 'SystemX', 'Kefico!@34', 'SystemX', 'systemx2051@gmail.com', 'SystemX');
|
|
GO
|
|
|
|
GO
|
|
DECLARE @VarDecimalSupported AS BIT;
|
|
|
|
SELECT @VarDecimalSupported = 0;
|
|
|
|
IF ((ServerProperty(N'EngineEdition') = 3)
|
|
AND (((@@microsoftversion / power(2, 24) = 9)
|
|
AND (@@microsoftversion & 0xffff >= 3024))
|
|
OR ((@@microsoftversion / power(2, 24) = 10)
|
|
AND (@@microsoftversion & 0xffff >= 1600))))
|
|
SELECT @VarDecimalSupported = 1;
|
|
|
|
IF (@VarDecimalSupported > 0)
|
|
BEGIN
|
|
EXECUTE sp_db_vardecimal_storage_format N'$(DatabaseName)', 'ON';
|
|
END
|
|
|
|
|
|
GO
|
|
ALTER DATABASE [$(DatabaseName)]
|
|
SET MULTI_USER
|
|
WITH ROLLBACK IMMEDIATE;
|
|
|
|
|
|
GO
|
|
PRINT N'업데이트가 완료되었습니다.';
|
|
|
|
|
|
GO
|