我今天在我們的一個項目中跑了這個bug三次。將問題和解決方案聯機以備將來參考。如何修復使用python保存二進制數據時「無法修改錯誤」psycopg2
impost psycopg2
con = connect(...)
def save(long_blob):
cur = con.cursor()
long_data = struct.unpack('<L', long_blob)
cur.execute('insert into blob_records(blob_data) values (%s)', [long_data])
這將失敗,錯誤「無法適應」psycopg2。
在這種情況下,我的類型是一個二進制字符串,但包含在由struct.unpack返回的元組中。類似於('0x001122')而不是'0x001122'。我想我們可以做一個元組提取器,但現在這只是記錄我們的錯誤。感謝你的回答。 – 2010-02-16 18:53:14