Релиз Psycopg 2.5, многофункционального PostgreSQL-драйвера для Python

Представлен релиз Psycopg 2.5, популярного драйвера для работы с PostgreSQL из программ на языке Python. Драйвер полностью соответствует спецификации Python DB API 2.0 и дополнительно поддерживает ряд расширений, позволяющих использовать специфичные возможности PostgreSQL.

Среди ключевых изменений в версии Psycopg 2.5:

  • Добавлен адаптер JSON, позволяющий напрямую обращаться к типу данных JSON, появившемуся в PostgreSQL 9.2
        cur.execute(
       ...     """select '{"a":[1,2,3],"b":[4,5,6]}'::json""")
        cur.fetchone()[0]
       {u'a': [1, 2, 3], u'b': [4, 5, 6]}
  • Добавлены адаптеры Range для работы с типами для определения диапазонов, появившимися в PostgreSQL 9.2:
        cur.execute("""select '[10,20)'::int4range""")
        r = cur.fetchone()[0]
        r.lower
       10
        r.upper_inc
       False

    Теперь объекты на языке python могут быть напрямую отнесены как Range в запросе:

       r = DateRange(date(2013,1,1), date(2013,2,1), '[)')
       cur.execute("select * from events where %s @ date", [r])
  • Добавлена поддержка выражения «with», позволяющего автоматически закрывать соединение после запроса:
    
        with psycopg2.connect(DSN) as conn:
           with conn.cursor() as curs:
              curs.execute(SQL)
  • Добавлен новый класс Diagnostics(exception),
    позволяющий через атрибуты получить расширенную информацию об ошибке со стороны сервера PosgreSQL.
  • Обеспечена поддержка версии Python 3.3.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.