
# SQLGenAI Database Configuration
# This file is automatically generated to configure database connections

from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker

# Database URL
DATABASE_URL = 'mysql+pymysql://avnadmin:AVNS_fCi3sA9701sLkgs-0F-@mysql-35c14f29-creations-3584.i.aivencloud.com:23574/sqlgenai?ssl=true'

# Create engine with proper SSL configuration for Aiven MySQL
engine = create_engine(
    DATABASE_URL,
    connect_args={
        'ssl': {
            'ca': None,
            'check_hostname': False,
            'verify_mode': None
        }
    }
)

# Create session factory
db_session = scoped_session(
    sessionmaker(autocommit=False, autoflush=False, bind=engine)
)

# Function to initialize database
def init_db():
    from app.utils.db_models import Base
    Base.metadata.create_all(bind=engine)

# Function to get database session
def get_db():
    return db_session
