Files
hotels/create_user_settings_tables.py

69 lines
2.1 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
"""
Создание таблиц для настроек пользователей и моделей LLM
"""
import psycopg2
from psycopg2.extras import RealDictCursor
# Конфигурация БД
DB_CONFIG = {
'host': '147.45.189.234',
'port': 5432,
'database': 'default_db',
'user': 'gen_user',
'password': '2~~9_^kVsU?2\\S'
}
def create_tables():
"""Создание таблиц для настроек пользователей"""
try:
conn = psycopg2.connect(**DB_CONFIG, cursor_factory=RealDictCursor)
cur = conn.cursor()
print("🔗 Подключение к БД установлено")
# Читаем SQL файл
with open('user_settings_schema.sql', 'r', encoding='utf-8') as f:
sql_content = f.read()
# Выполняем SQL
cur.execute(sql_content)
conn.commit()
print("✅ Таблицы созданы успешно!")
# Проверяем созданные таблицы
cur.execute("""
SELECT table_name
FROM information_schema.tables
WHERE table_schema = 'public'
AND table_name IN ('user_settings', 'llm_models')
ORDER BY table_name;
""")
tables = cur.fetchall()
print(f"📊 Созданы таблицы: {[t['table_name'] for t in tables]}")
# Проверяем количество моделей
cur.execute("SELECT provider, COUNT(*) as count FROM llm_models GROUP BY provider ORDER BY provider;")
models = cur.fetchall()
print("\n📋 Модели по провайдерам:")
for model in models:
print(f" {model['provider']}: {model['count']} моделей")
cur.close()
conn.close()
print("\n🎉 Готово! Теперь можно использовать БД для настроек пользователей.")
except Exception as e:
print(f"❌ Ошибка: {e}")
if __name__ == "__main__":
create_tables()