23 lines
1.1 KiB
SQL
23 lines
1.1 KiB
SQL
ALTER TABLE communication_messages ADD COLUMN image jsonb;
|
|
--> statement-breakpoint
|
|
ALTER TABLE collaboration_messages ADD COLUMN image jsonb;
|
|
--> statement-breakpoint
|
|
ALTER TABLE collaboration_messages DROP CONSTRAINT collaboration_messages_body_check;
|
|
--> statement-breakpoint
|
|
ALTER TABLE collaboration_messages ADD CONSTRAINT collaboration_messages_body_check
|
|
CHECK (length(body) <= 10000 AND (length(body) > 0 OR image IS NOT NULL));
|
|
--> statement-breakpoint
|
|
CREATE TABLE communication_message_reactions (
|
|
message_id bigint NOT NULL REFERENCES communication_messages(id) ON DELETE CASCADE,
|
|
actor_id uuid NOT NULL REFERENCES auth_users(id) ON DELETE CASCADE,
|
|
emoji text NOT NULL CHECK (length(emoji) BETWEEN 1 AND 16),
|
|
PRIMARY KEY (message_id, actor_id, emoji)
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE collaboration_message_reactions (
|
|
message_id uuid NOT NULL REFERENCES collaboration_messages(id) ON DELETE CASCADE,
|
|
actor_id uuid NOT NULL REFERENCES collaboration_principals(id) ON DELETE CASCADE,
|
|
emoji text NOT NULL CHECK (length(emoji) BETWEEN 1 AND 16),
|
|
PRIMARY KEY (message_id, actor_id, emoji)
|
|
);
|