sql >> Database >  >> RDS >> Mysql

Een bestand invoegen / ophalen dat is opgeslagen als een BLOB in een MySQL db met behulp van python

thedata = open('thefile', 'rb').read()
sql = "INSERT INTO sometable (theblobcolumn) VALUES (%s)"
cursor.execute(sql, (thedata,))

Die code werkt natuurlijk alleen zoals geschreven als uw tabel alleen de BLOB-kolom heeft en wat u wilt doen is INSERT, maar u kunt het natuurlijk gemakkelijk aanpassen om meer kolommen toe te voegen, UPDATE gebruiken in plaats van INSERT, of wat het ook is dat u precies moet doen.

Ik neem ook aan dat je bestand binair is in plaats van tekst, enz.; nogmaals, als mijn gissingen onjuist zijn, is het gemakkelijk voor u om de bovenstaande code dienovereenkomstig aan te passen.

Een soort SELECT op cursor.execute , dan een soort van ophalen van de cursor, is hoe je BLOB-gegevens ophaalt, precies zoals je elk ander soort gegevens ophaalt.




  1. lastInsertId werkt niet in Postgresql

  2. Verschil tussen -> en ::in PHP MySQLi OOP

  3. H2-update met join

  4. Wanneer moet ik het gecomprimeerde MySQL-protocol gebruiken?