use uuid as primary key in component

This commit is contained in:
zhuxu 2025-07-03 21:06:32 +08:00
parent 3f765e32e0
commit de31efa9c1
3 changed files with 9 additions and 8 deletions

View File

@ -72,8 +72,7 @@ CREATE TABLE PUBLIC.PAGE (
); );
CREATE TABLE PUBLIC.COMPONENT ( CREATE TABLE PUBLIC.COMPONENT (
ID BIGSERIAL PRIMARY KEY, GLOBAL_UUID UUID PRIMARY KEY DEFAULT GEN_RANDOM_UUID(),
GLOBAL_UUID UUID NOT NULL DEFAULT GEN_RANDOM_UUID(),
NSPATH VARCHAR(32) NOT NULL DEFAULT '', NSPATH VARCHAR(32) NOT NULL DEFAULT '',
TAG VARCHAR(32) NOT NULL DEFAULT '', TAG VARCHAR(32) NOT NULL DEFAULT '',
NAME VARCHAR(64) NOT NULL DEFAULT '', NAME VARCHAR(64) NOT NULL DEFAULT '',
@ -138,10 +137,10 @@ CREATE TABLE PUBLIC.MEASUREMENT (
DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""} DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""}
SIZE INTEGER NOT NULL DEFAULT -1, SIZE INTEGER NOT NULL DEFAULT -1,
BAY_ID BIGINT NOT NULL, BAY_ID BIGINT NOT NULL,
COMPONENT_ID BIGINT NOT NULL, COMPONENT_UUID UUID NOT NULL,
OP INTEGER NOT NULL DEFAULT -1, OP INTEGER NOT NULL DEFAULT -1,
TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (BAY_ID) REFERENCES PUBLIC.BAY (ID), FOREIGN KEY (BAY_ID) REFERENCES PUBLIC.BAY (ID),
FOREIGN KEY (COMPONENT_ID) REFERENCES PUBLIC.COMPONENT (ID) FOREIGN KEY (COMPONENT_UUID) REFERENCES PUBLIC.COMPONENT (GLOBAL_UUID)
); );

View File

@ -10,7 +10,6 @@ CREATE SEQUENCE IF NOT EXISTS public.component_id_seq;
CREATE TABLE IF NOT EXISTS public.component CREATE TABLE IF NOT EXISTS public.component
( (
id integer NOT NULL DEFAULT nextval('component_id_seq'::regclass),
global_uuid uuid NOT NULL DEFAULT gen_random_uuid(), global_uuid uuid NOT NULL DEFAULT gen_random_uuid(),
nspath character varying(32) COLLATE pg_catalog."default", nspath character varying(32) COLLATE pg_catalog."default",
tag character varying(32) COLLATE pg_catalog."default" NOT NULL, tag character varying(32) COLLATE pg_catalog."default" NOT NULL,
@ -29,7 +28,7 @@ CREATE TABLE IF NOT EXISTS public.component
context jsonb NOT NULL DEFAULT '{}'::jsonb, context jsonb NOT NULL DEFAULT '{}'::jsonb,
op integer NOT NULL DEFAULT '-1'::integer, op integer NOT NULL DEFAULT '-1'::integer,
ts timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP, ts timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT component_id_PrimaryKey PRIMARY KEY (id) CONSTRAINT component_pkey PRIMARY KEY (global_uuid)
) )
TABLESPACE pg_default; TABLESPACE pg_default;

View File

@ -10,7 +10,10 @@ CREATE TABLE PUBLIC.MEASUREMENT (
DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""} DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""}
SIZE INTEGER NOT NULL DEFAULT -1, SIZE INTEGER NOT NULL DEFAULT -1,
BAY_ID INTEGER NOT NULL DEFAULT -1, BAY_ID INTEGER NOT NULL DEFAULT -1,
COMPONENT_ID INTEGER NOT NULL DEFAULT -1, COMPONENT_UUID UUID NOT NULL,
OP INTEGER NOT NULL DEFAULT -1, OP INTEGER NOT NULL DEFAULT -1,
TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (BAY_ID) REFERENCES PUBLIC.BAY (ID),
FOREIGN KEY (COMPONENT_UUID) REFERENCES PUBLIC.COMPONENT (GLOBAL_UUID)
); );