Использование postgres через ODBC в Python 2.7

  • Я установил Postgres.app и запустил его.
  • У меня установлен pip pypyodbc
  • Я скопировал привет мировые линии из документации Pypyodbc, и получил ошибку ниже. есть идеи, в чем может быть проблема?

Вот мой код

  from __future__ import print_function
  import pypyodbc
  import datetime
  conn = pypyodbc.connect("DRIVER={psqlOBDC};SERVER=localhost") 

И я получаю эту ошибку:

File "/ob/pkg/python/dan27/lib/python2.7/site-packages/pypyodbc.py", line 975, in ctrl_err
  err_list.append((from_buffer_u(state), from_buffer_u(Message), NativeError.value))
File "/ob/pkg/python/dan27/lib/python2.7/site-packages/pypyodbc.py", line 482, in UCS_dec
  uchar = buffer.raw[i:i + ucs_length].decode(odbc_decoding)
File "/ob/pkg/python/dan27/lib/python2.7/encodings/utf_32.py", line 11, in decode
  return codecs.utf_32_decode(input, errors, True)
UnicodeDecodeError: 'utf32' codec can't decode bytes in position 0-1:   truncated data

Что я делаю неправильно?

Нужно ли сначала как-то инициализировать БД / таблицы? это странная ошибка, если это проблема.

1 ответ

Я скопировал ваш код на мою машину Fedora, и он начался, когда я изменил строку подключения на что-то вроде:

conn = pypyodbc.connect("Driver={PostgreSQL};Server=IP address;Port=5432;Database=myDataBase;Uid=myUsername;Pwd=myPassword;")

Вы можете найти больше строк подключения для PostgreSQL и ODBC по адресу: https://connectionstrings.com/postgresql-odbc-driver-psqlodbc/

Другие вопросы по тегам