64 lines
2.9 KiB
SQL
64 lines
2.9 KiB
SQL
-- Junction / mapping tables get a table-local AUTO_INCREMENT row id.
|
||
-- Business uniqueness stays UNIQUE (same columns as the old composite PK).
|
||
-- Snowflake PKs (t_users / t_messages / t_conversations / moments posts) are unchanged.
|
||
|
||
ALTER TABLE t_user_emails
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 email' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_email (email);
|
||
|
||
ALTER TABLE t_p2p_conversations
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (user_small, user_big)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_p2p_users (user_small, user_big);
|
||
|
||
ALTER TABLE t_conversation_members
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (conversation_id, user_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_conversation_members (conversation_id, user_id);
|
||
|
||
ALTER TABLE t_device_sync_cursors
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (user_id, device_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_user_device (user_id, device_id);
|
||
|
||
ALTER TABLE t_group_members
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (group_id, user_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_group_members (group_id, user_id);
|
||
|
||
ALTER TABLE t_message_deletes
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (user_id, msg_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_user_msg (user_id, msg_id);
|
||
|
||
ALTER TABLE t_moment_audience
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (post_id, peer_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_post_peer (post_id, peer_id);
|
||
|
||
ALTER TABLE t_moment_likes
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (post_id, user_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_post_user (post_id, user_id);
|
||
|
||
ALTER TABLE t_moment_settings
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 user_id' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_user_id (user_id);
|
||
|
||
ALTER TABLE t_moment_hides
|
||
DROP PRIMARY KEY,
|
||
ADD COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '行 id,表内自增,仅内部用;业务唯一键是 (user_id, peer_id)' FIRST,
|
||
ADD PRIMARY KEY (id),
|
||
ADD UNIQUE KEY uk_user_peer (user_id, peer_id);
|