-- Archived accounts. Live rows stay in t_users; cancellation copies then deletes. CREATE TABLE IF NOT EXISTS t_user_delete ( id BIGINT PRIMARY KEY COMMENT '原 t_users.id(uid),Snowflake,不复用', spark_id VARCHAR(32) NOT NULL COMMENT '注销时的 Spark 账号', nickname VARCHAR(64) NOT NULL DEFAULT '' COMMENT '注销时的昵称', avatar VARCHAR(512) NOT NULL DEFAULT '' COMMENT '注销时的头像 object_key', qrcode VARCHAR(512) NOT NULL DEFAULT '' COMMENT '注销时的个人二维码票据', birthday DATE NULL COMMENT '注销时的生日', gender TINYINT NOT NULL DEFAULT 0 COMMENT '0=未知 1=男 2=女', status TINYINT NOT NULL DEFAULT 1 COMMENT '注销前账号状态:1=正常 0=禁用', email VARCHAR(255) NOT NULL DEFAULT '' COMMENT '注销时绑定的邮箱,注销后可重新注册', last_login_at DATETIME(3) NULL COMMENT '注销前最近登录时间', last_active_at DATETIME(3) NULL COMMENT '注销前最近活跃时间', created_at DATETIME(3) NOT NULL COMMENT '原注册时间', updated_at DATETIME(3) NOT NULL COMMENT '原资料更新时间', deleted_at DATETIME(3) NOT NULL COMMENT '注销时间', KEY idx_email (email), KEY idx_spark_id (spark_id), KEY idx_deleted_at (deleted_at) ) COMMENT='已注销用户档案。从 t_users 迁入后删除原行,邮箱与 spark_id 可重新注册';