sql_engine.py 634 B

12345678910111213141516171819
  1. from config.settings import OUTPUT_DIR, WORK_DIR, DB_URL
  2. from datetime import datetime
  3. from sqlmodel import Field, SQLModel, create_engine, Session, select
  4. from sqlalchemy import text # Add this import
  5. engine = create_engine(DB_URL, echo=False)
  6. def create_db_and_tables():
  7. SQLModel.metadata.create_all(engine)
  8. def drop_table(model: SQLModel):
  9. """删除SearchResult表以便重新创建"""
  10. with engine.connect() as conn:
  11. # Use text() to create an executable SQL statement
  12. conn.execute(text(f"DROP TABLE IF EXISTS {model.__tablename__}"))
  13. conn.commit()
  14. SQLModel.metadata.create_all(engine)