30 lines
846 B
Python
30 lines
846 B
Python
#!/usr/bin/env python3
|
|
"""
|
|
Database initialization script for Gold Trading Simulator
|
|
"""
|
|
import sys
|
|
import os
|
|
|
|
# Add parent directory to path to import app modules
|
|
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..', 'backend'))
|
|
|
|
from app.db.database import init_db, engine
|
|
from app.models.models import Base
|
|
|
|
def initialize_database():
|
|
"""Create all database tables"""
|
|
print("Initializing database...")
|
|
try:
|
|
# Create all tables
|
|
Base.metadata.create_all(bind=engine)
|
|
print("✓ Database tables created successfully!")
|
|
print("\nCreated tables:")
|
|
for table in Base.metadata.sorted_tables:
|
|
print(f" - {table.name}")
|
|
except Exception as e:
|
|
print(f"✗ Error initializing database: {e}")
|
|
sys.exit(1)
|
|
|
|
if __name__ == "__main__":
|
|
initialize_database()
|