user.sql 603 B

1234567891011121314151617181920212223
  1. CREATE TABLE IF NOT EXISTS public.user (
  2. id SERIAL PRIMARY KEY,
  3. passport VARCHAR(32) NOT NULL UNIQUE,
  4. password VARCHAR(64) NOT NULL,
  5. nickname VARCHAR(64),
  6. status SMALLINT DEFAULT 1,
  7. created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  8. updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
  9. );
  10. -- 可选:自动更新 updated_at
  11. CREATE OR REPLACE FUNCTION set_updated_at()
  12. RETURNS TRIGGER AS $$
  13. BEGIN
  14. NEW.updated_at = CURRENT_TIMESTAMP;
  15. RETURN NEW;
  16. END;
  17. $$ LANGUAGE plpgsql;
  18. CREATE TRIGGER trg_user_updated
  19. BEFORE UPDATE ON public.user
  20. FOR EACH ROW
  21. EXECUTE FUNCTION set_updated_at();