32 lines
1.3 KiB
SQL
32 lines
1.3 KiB
SQL
-- 登录与权限系统迁移脚本(在已有库上执行一次)
|
|
-- 目标:
|
|
-- 1) 新增 users 表(管理员/普通用户)
|
|
-- 2) 新增 user_account_memberships 表(用户可访问哪些交易账号)
|
|
--
|
|
-- 执行前建议备份数据库。
|
|
|
|
USE `auto_trade_sys`;
|
|
|
|
CREATE TABLE IF NOT EXISTS `users` (
|
|
`id` INT PRIMARY KEY AUTO_INCREMENT,
|
|
`username` VARCHAR(64) NOT NULL,
|
|
`password_hash` VARCHAR(255) NOT NULL,
|
|
`role` VARCHAR(20) NOT NULL DEFAULT 'user' COMMENT 'admin, user',
|
|
`status` VARCHAR(20) NOT NULL DEFAULT 'active' COMMENT 'active, disabled',
|
|
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
UNIQUE KEY `uk_username` (`username`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='登录用户';
|
|
|
|
CREATE TABLE IF NOT EXISTS `user_account_memberships` (
|
|
`id` INT PRIMARY KEY AUTO_INCREMENT,
|
|
`user_id` INT NOT NULL,
|
|
`account_id` INT NOT NULL,
|
|
`role` VARCHAR(20) NOT NULL DEFAULT 'viewer' COMMENT 'owner, viewer',
|
|
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
UNIQUE KEY `uk_user_account` (`user_id`, `account_id`),
|
|
INDEX `idx_user_id` (`user_id`),
|
|
INDEX `idx_account_id` (`account_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户-交易账号授权';
|
|
|