/*
List of devices (PLC)
*/
CREATE TABLE [dbo].[Devices] (
    [ID]             BIGINT        IDENTITY (1, 1) NOT NULL,
    [Name]           NVARCHAR (20) NOT NULL,
    [IP]             NVARCHAR (25) NULL,
    [T1Name]         NVARCHAR (20) NULL,
    [T2Name]         NVARCHAR (20) NULL,
    [TermType]       NVARCHAR (10) NULL,
    [ProgramId]      BIGINT        NULL,
    [Timestamp]      DATETIME      NOT NULL,
    [ManualOverload] BIGINT        NOT NULL
);

/*
Commonly used values of temperature
*/
CREATE TABLE [dbo].[DeviceMode] (
    [Id]    BIGINT         IDENTITY (1, 1) NOT NULL,
    [Name]  NVARCHAR (20)  NOT NULL,
    [Value] DECIMAL (3, 1) NOT NULL
);

CREATE UNIQUE NONCLUSTERED INDEX [IX_DeviceMode_Column]
    ON [dbo].[DeviceMode]([Name] ASC);

/*
List of program for device
*/
CREATE TABLE [dbo].[DeviceProgram] (
    [ID]       BIGINT        IDENTITY (1, 1) NOT NULL,
    [DeviceId] BIGINT        NOT NULL,
    [Name]     NVARCHAR (30) NOT NULL
);

/*
Program items for a program 
*/
CREATE TABLE [dbo].[DeviceProgramData] (
    [ID]        BIGINT   IDENTITY (1, 1) NOT NULL,
    [From]      DATETIME NOT NULL,
    [To]        DATETIME NOT NULL,
    [ModeId]    BIGINT   NOT NULL,
    [ProgramId] BIGINT   NOT NULL
);


















