Форум сайта python.su
0
Как вызвать Pl/pgsql-функцию из Python-скрипта так, чтобы returned results прочитать также и текст сообщения из “RAISE INFO ‘….’” или “RAISE NOTICE ‘…’”
??
Офлайн
61
import psycopg2 import psycopg2.extensions import logging class LoggingCursor(psycopg2.extensions.cursor): def execute(self, sql, args=None): logger = logging.getLogger('sql_debug') logger.info(self.mogrify(sql, args)) try: psycopg2.extensions.cursor.execute(self, sql, args) except Exception, exc: logger.error("%s: %s" % (exc.__class__.__name__, exc)) raise conn = psycopg2.connect(DSN) cur = conn.cursor(cursor_factory=LoggingCursor) cur.execute("INSERT INTO mytable VALUES (%s, %s, %s);", (10, 20, 30))
Офлайн
0
Спасибо, я нашел для использования “conn.notices”, но предлженный Вами способ тоже попробую при случае
Офлайн