baoxiang/backend/reset_db.py

38 lines
943 B
Python
Raw Normal View History

2025-12-16 18:06:50 +08:00
"""
重置数据库脚本 - 删除所有表并重新创建
"""
import sys
import os
# 添加项目根目录到 Python 路径
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
from app.core.database import engine, SessionLocal
from app.models import Base
def reset_database():
"""重置数据库"""
print("Dropping all tables...")
Base.metadata.drop_all(bind=engine)
print("Creating all tables...")
Base.metadata.create_all(bind=engine)
print("Database reset completed successfully!")
# 尝试初始化系统配置
db = SessionLocal()
try:
from app.services.system_service import SystemService
SystemService.initialize_default_configs(db)
print("Default system configs initialized successfully")
except Exception as e:
print(f"System config initialization failed: {e}")
finally:
db.close()
if __name__ == "__main__":
reset_database()