32 lines
1.2 KiB
SQL
32 lines
1.2 KiB
SQL
CREATE TABLE sys_users
|
|
(
|
|
id INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
|
|
account TEXT NOT NULL UNIQUE,
|
|
username TEXT NOT NULL,
|
|
password_hash TEXT NOT NULL,
|
|
status SMALLINT NOT NULL DEFAULT 1,
|
|
avatar_id INTEGER,
|
|
token_version INTEGER NOT NULL DEFAULT 0,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ,
|
|
|
|
CHECK (status IN (0, 1))
|
|
);
|
|
|
|
CREATE INDEX idx_sys_users_account ON sys_users (account);
|
|
|
|
CREATE TRIGGER update_sys_users_updated_at
|
|
BEFORE UPDATE
|
|
ON sys_users
|
|
FOR EACH ROW
|
|
EXECUTE FUNCTION update_updated_at_column();
|
|
|
|
COMMENT ON COLUMN sys_users.id IS '主键ID';
|
|
COMMENT ON COLUMN sys_users.account IS '用户账号';
|
|
COMMENT ON COLUMN sys_users.username IS '用户名称';
|
|
COMMENT ON COLUMN sys_users.password_hash IS 'hash密码';
|
|
COMMENT ON COLUMN sys_users.status IS '用户状态 0:禁用 1:启用';
|
|
COMMENT ON COLUMN sys_users.avatar_id IS '头像文件id';
|
|
COMMENT ON COLUMN sys_users.token_version IS 'Token Version';
|
|
COMMENT ON COLUMN sys_users.created_at IS '创建时间';
|
|
COMMENT ON COLUMN sys_users.updated_at IS '更新时间'; |