reset_schema.sql 1.5 KB

1234567891011121314151617181920212223242526272829303132333435
  1. -- ============================================================
  2. -- 数据库完全重置脚本(清空所有表和数据,重建结构)
  3. -- 警告:此操作不可逆,所有数据将永久丢失!
  4. -- 执行方式:
  5. -- docker exec -i pharmacopoeia-pg psql -U postgres < database/reset_schema.sql
  6. -- ============================================================
  7. BEGIN;
  8. -- 1. 删除所有旧表(级联删除依赖对象)
  9. DROP TABLE IF EXISTS public.answer_records CASCADE;
  10. DROP TABLE IF EXISTS public.user_progress CASCADE;
  11. DROP TABLE IF EXISTS public.messages CASCADE;
  12. DROP TABLE IF EXISTS public.conversations CASCADE;
  13. DROP TABLE IF EXISTS public.drug_chunks CASCADE;
  14. DROP TABLE IF EXISTS public.questions CASCADE;
  15. DROP TABLE IF EXISTS public.knowledge_points CASCADE;
  16. DROP TABLE IF EXISTS public.drugs CASCADE;
  17. DROP TABLE IF EXISTS public.users CASCADE;
  18. -- 2. 删除序列
  19. DROP SEQUENCE IF EXISTS public.answer_records_id_seq CASCADE;
  20. DROP SEQUENCE IF EXISTS public.user_progress_id_seq CASCADE;
  21. DROP SEQUENCE IF EXISTS public.messages_id_seq CASCADE;
  22. DROP SEQUENCE IF EXISTS public.conversations_id_seq CASCADE;
  23. DROP SEQUENCE IF EXISTS public.drug_chunks_id_seq CASCADE;
  24. DROP SEQUENCE IF EXISTS public.questions_id_seq CASCADE;
  25. DROP SEQUENCE IF EXISTS public.knowledge_points_id_seq CASCADE;
  26. DROP SEQUENCE IF EXISTS public.drugs_id_seq CASCADE;
  27. DROP SEQUENCE IF EXISTS public.users_id_seq CASCADE;
  28. COMMIT;
  29. -- 3. 重建(直接执行 schema.sql)
  30. -- docker exec -i pharmacopoeia-pg psql -U postgres < database/schema.sql