sql >> Database >  >> RDS >> PostgreSQL

TypeError:kan niet ontsnappen aan psycopg2.extensions.Binary to binary

De bytes uit het bestand casten naar psycopg2.Binary is onnodig. Het gebeurt automatisch wanneer SQLAlchemy de instructie en waarden naar de database verzendt (met behulp van de DBAPI-connector, in dit geval psycopg2).

Iets als

with open(fn, 'rb') as f:
    bytes_ = f.read()
    instance = MyModel(document1=bytes_)
    session.add(instance)
    session.commit() 

werkt in zowel Python2 als Python3, SQLAlchemy 1.3.x, en genereert deze uitvoer van de engine:

2020-09-06 10:39:27,775 INFO sqlalchemy.engine.base.Engine INSERT INTO mytable (document1) VALUES (%(document1)s) RETURNING mytable.id
2020-09-06 10:39:27,775 INFO sqlalchemy.engine.base.Engine {'document1': <psycopg2.extensions.Binary object at 0x7f8ea012ff60>}



  1. Waarom MYSQL IN-sleutelwoord geen NULL-waarden in overweging neemt?

  2. bereken prijs tussen bepaalde datums

  3. Hoe twee kolommen als één te selecteren?

  4. De eenvoudigste manier om een ​​recursieve self-join te doen?