sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo puedo recuperar datos binarios usando el conector Mysql Python?

Use una conexión sin procesar (o un cursor sin procesar) para ejecutar la búsqueda.

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

De forma predeterminada, el comando python fetch intenta convertir los datos binarios en una cadena. Cuando intenta esto, encuentra una secuencia de bytes que no está permitida en cadenas codificadas en utf-8. Establecer el modo sin formato en True anula este comportamiento y hace que los resultados se devuelvan tal cual, en lugar de convertirlos a tipos de Python.