# 2026-03-09 # handler.py — универсальный исполнитель SQL запросов. # Принимает event.statements — массив SQL строк, выполняет последовательно. # Используется sless_job для DDL операций (CREATE TABLE, миграции и т.д.) import os import psycopg2 def handle(event): dsn = os.environ['PG_DSN'] statements = event.get('statements', []) if not statements: return {'error': 'no statements provided'} conn = psycopg2.connect(dsn) try: cur = conn.cursor() for sql in statements: cur.execute(sql) conn.commit() return {'ok': True, 'executed': len(statements)} except Exception as e: conn.rollback() return {'error': str(e)} finally: conn.close()