Files
iistwin/migrations/0060_data_table_links.sql

18 lines
991 B
SQL

-- data_table_links: связи между справочниками (родитель → подсправочник)
CREATE TABLE IF NOT EXISTS data_table_links (
id SERIAL PRIMARY KEY,
organization_id INTEGER NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
parent_table_id INTEGER NOT NULL REFERENCES data_tables(id) ON DELETE CASCADE,
child_table_id INTEGER NOT NULL REFERENCES data_tables(id) ON DELETE CASCADE,
parent_column_index INTEGER NOT NULL DEFAULT 0,
child_column_index INTEGER NOT NULL DEFAULT 0,
parent_values JSONB NOT NULL DEFAULT '[]',
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE INDEX IF NOT EXISTS data_table_links_parent_idx ON data_table_links(parent_table_id);
CREATE INDEX IF NOT EXISTS data_table_links_child_idx ON data_table_links(child_table_id);
CREATE UNIQUE INDEX IF NOT EXISTS data_table_links_parent_child_unique
ON data_table_links(parent_table_id, child_table_id);