-- Table: public.syncmotor_bay

-- DROP
DROP TABLE IF EXISTS public.syncmotor_bay;
DROP SEQUENCE IF EXISTS public.syncmotor_bay_id_seq;

-- CREATE
CREATE SEQUENCE IF NOT EXISTS public.syncmotor_bay_id_seq;

CREATE TABLE IF NOT EXISTS public.syncmotor_bay
(
    id integer NOT NULL DEFAULT nextval('syncmotor_bay_id_seq'::regclass),
    component_id integer NOT NULL,

    dev_protect jsonb NOT NULL DEFAULT '{}'::jsonb,
    dev_scada jsonb NOT NULL DEFAULT '{}'::jsonb,
    dev_intelligent jsonb NOT NULL DEFAULT '{}'::jsonb,
    dev_recording jsonb NOT NULL DEFAULT '{}'::jsonb,
    dev_status jsonb NOT NULL DEFAULT '{}'::jsonb,
    dev_etc jsonb NOT NULL DEFAULT '{}'::jsonb,

    "s_Ia" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Ib" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Ic" jsonb NOT NULL DEFAULT '{}'::jsonb, 
    "s_I0" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_I1" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_I2" jsonb NOT NULL DEFAULT '{}'::jsonb, 

    "s_Ua" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Ub" jsonb NOT NULL DEFAULT '{}'::jsonb, 
    "s_Uc" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U0" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U1" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U2" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Uab" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Ubc" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Uca" jsonb NOT NULL DEFAULT '{}'::jsonb,  
    "s_Uarrow" jsonb NOT NULL DEFAULT '{}'::jsonb,    

    "s_IA" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_IB" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_IC" jsonb NOT NULL DEFAULT '{}'::jsonb, 
    "s_I0p" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_I1p" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_I2p" jsonb NOT NULL DEFAULT '{}'::jsonb, 
    "s_In" jsonb NOT NULL DEFAULT '{}'::jsonb, 

    "s_IpA" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_IpB" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_IpC" jsonb NOT NULL DEFAULT '{}'::jsonb, 

    "s_UA" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_UB" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_UC" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U0p" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U1p" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_U2p" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_UAB" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_UBC" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_UCA" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Uarrowp" jsonb NOT NULL DEFAULT '{}'::jsonb,

    "s_P" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Q" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_S" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_PF" jsonb NOT NULL DEFAULT '{}'::jsonb,

    "s_f" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_df_per_dt" jsonb NOT NULL DEFAULT '{}'::jsonb,

    "s_Temp" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_PD" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_Vsp" jsonb NOT NULL DEFAULT '{}'::jsonb,

    "s_TL" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_n" jsonb NOT NULL DEFAULT '{}'::jsonb,
    "s_s" jsonb NOT NULL DEFAULT '{}'::jsonb,

    "t_Ia" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Ib" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Ic" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 
    "t_I0" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_I1" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_I2" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 

    "t_Ua" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Ub" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 
    "t_Uc" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U0" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U1" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U2" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Uab" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Ubc" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Uca" DOUBLE PRECISION NOT NULL DEFAULT 0.0,  
    "t_Uarrow" DOUBLE PRECISION NOT NULL DEFAULT 0.0,    

    "t_IA" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_IB" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_IC" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 
    "t_I0p" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_I1p" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_I2p" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 
    "t_In" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 

    "t_IpA" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_IpB" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_IpC" DOUBLE PRECISION NOT NULL DEFAULT 0.0, 

    "t_UA" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_UB" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_UC" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U0p" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U1p" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_U2p" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_UAB" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_UBC" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_UCA" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Uarrowp" DOUBLE PRECISION NOT NULL DEFAULT 0.0,

    "t_P" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Q" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_S" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_PF" DOUBLE PRECISION NOT NULL DEFAULT 0.0,

    "t_f" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_df_per_dt" DOUBLE PRECISION NOT NULL DEFAULT 0.0,

    "t_Temp" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_PD" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_Vsp" DOUBLE PRECISION NOT NULL DEFAULT 0.0,

    "t_TL" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_n" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
    "t_s" DOUBLE PRECISION NOT NULL DEFAULT 0.0,

    op integer NOT NULL DEFAULT '-1'::integer,
    ts timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP,

    CONSTRAINT syncmotor_bay_id_PrimaryKey PRIMARY KEY (id),
    CONSTRAINT syncmotor_bay_ForeignKey_component_id FOREIGN KEY (component_id)
        REFERENCES public.page (id) MATCH SIMPLE
        ON UPDATE NO ACTION
        ON DELETE NO ACTION
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.syncmotor_bay
    OWNER to postgres;

COMMENT ON TABLE public.syncmotor_bay
    IS '存储异步电动机的间隔信息
    s下划线后面是符号，代表端子信息，包含二次设备信息
    t下划线后面符号，代表实测值
    这两行是一一对应关系';
	

