PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

PostgreSQL psycopg2 Python3.7.4 UnicodeDecodeError:codec 'ascii' không thể giải mã byte

Tôi đã giải quyết sự cố bằng cách sử dụng gói pyodbc.here:

import pyodbc
import pandas as pd

conn_str = (
    "DRIVER={PostgreSQL Unicode};"
    "DATABASE=adp_report;"
    "UID=db_name;"
    "PWD=password;"
    "SERVER=111.111.11.11;"
    "PORT=5432;"
    )

lưu ý rằng "DRIVER ={PostgreSQL Unicode};" nghĩa đen là chuỗi đó. Đối với các đối số khác, hãy thay đổi chúng cho phù hợp. Đây là một hàm tiện dụng để chuyển chuỗi kết nối và truy vấn từ cơ sở dữ liệu.

def query_db(query):
    conn = pyodbc.connect(conn_str)
    dat = pd.read_sql(query, conn)
    conn.close()
    return dat



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Psycopg2 sử dụng hết bộ nhớ trên truy vấn chọn lọc lớn

  2. Sao chép bảng từ cơ sở dữ liệu này sang cơ sở dữ liệu khác trong Postgres

  3. Kho lưu trữ - sắp xếp theo truy vấn gốc không hoạt động

  4. Tại sao KHÔNG NULL sai khi kiểm tra một loại hàng?

  5. Làm cách nào tôi có thể đạt được hành vi đối chiếu Postgres trong Linux giống như trong Mac OS?