· 6 years ago · Apr 09, 2019, 05:32 PM
1IF (DB_ID(N'orchestrator') IS NULL) BEGIN
2 CREATE DATABASE [orchestrator];
3
4 USE [orchestrator];
5
6 IF NOT EXISTS (SELECT * FROM sysobjects WHERE NAME='order' AND xtype='U')
7 CREATE TABLE [order] (
8 [id] INT IDENTITY(1, 1) PRIMARY KEY,
9 [worker] CHAR(88) DEFAULT NULL,
10 [status] INT DEFAULT 0 CHECK ([status] IN(-1, 0, 1)),
11 [record] DATETIME DEFAULT GETDATE()
12 );
13
14 IF NOT EXISTS (SELECT * FROM sysobjects WHERE NAME='instruction' AND xtype='U')
15 CREATE TABLE [instruction] (
16 [id] INT IDENTITY(1, 1) PRIMARY KEY,
17 [order] INT NOT NULL,
18 [query] VARCHAR(MAX) NOT NULL,
19 [record] DATETIME DEFAULT GETDATE(),
20 FOREIGN KEY ([order]) REFERENCES [order]([id])
21 );
22
23 IF NOT EXISTS (SELECT * FROM sysobjects WHERE NAME='result' AND xtype='U')
24 CREATE TABLE [result] (
25 [id] INT IDENTITY(1, 1) PRIMARY KEY,
26 [order] INT NOT NULL,
27 [timespan] INT NULL,
28 [record] DATETIME DEFAULT GETDATE()
29 FOREIGN KEY ([order]) REFERENCES [order]([id])
30 );
31
32 IF NOT EXISTS (SELECT * FROM sysobjects WHERE NAME='data' AND xtype='U')
33 CREATE TABLE [data] (
34 [id] INT IDENTITY(1, 1) PRIMARY KEY,
35 [result] INT NOT NULL,
36 [data] VARCHAR(MAX) NOT NULL,
37 [record] DATETIME DEFAULT GETDATE()
38 FOREIGN KEY ([result]) REFERENCES [result]([id])
39 );
40END;