Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann ich Binärdaten mit dem MySQL-Python-Connector abrufen?

Verwenden Sie die Raw-Verbindung (oder den Raw-Cursor), um den Abruf auszuführen.

import mysql.connector
conn = mysql.connector.connect(database='test', 
user='test',raw=True)
cursor = conn.cursor()
cursor.execute("SELECT * FROM foo")
cursor.fetchall()

Standardmäßig versucht der Python-Abrufbefehl, die Binärdaten in eine Zeichenfolge zu konvertieren. Wenn es dies versucht, stößt es auf eine Bytesequenz, die in utf-8-codierten Zeichenfolgen nicht zulässig ist. RAW-Modus auf True setzen setzt dieses Verhalten außer Kraft und sorgt dafür, dass die Ergebnisse unverändert zurückgegeben und nicht in Python-Typen konvertiert werden.