12 lines
591 B
PL/PgSQL
12 lines
591 B
PL/PgSQL
BEGIN;
|
|
SET ROLE identity_role;
|
|
CREATE TABLE IF NOT EXISTS identity.principal_data_realms (
|
|
realm_id TEXT PRIMARY KEY, owner_principal_id TEXT NOT NULL, realm_kind TEXT NOT NULL,
|
|
member_principal_ids TEXT[] NOT NULL DEFAULT ARRAY[]::TEXT[], shared BOOLEAN NOT NULL DEFAULT FALSE,
|
|
revision BIGINT NOT NULL, recorded_at_unix_millis BIGINT NOT NULL,
|
|
CHECK (realm_id <> ''), CHECK (owner_principal_id <> ''), CHECK (realm_kind IN ('PERSONAL','SHARED','PUBLIC')),
|
|
CHECK (realm_kind <> 'SHARED' OR shared), CHECK (revision > 0), CHECK (recorded_at_unix_millis > 0)
|
|
);
|
|
RESET ROLE;
|
|
COMMIT;
|