我試圖在sqlite3數(shù)據(jù)庫中存儲大約1000個浮點數(shù)的numpy數(shù)組,但我不斷收到錯誤“ InterfaceError:錯誤綁定參數(shù)1-可能是不受支持的類型”。我的印象是BLOB數(shù)據(jù)類型可以是任何東西,但絕對不能與numpy數(shù)組一起使用。這是我嘗試過的:import sqlite3 as sqlimport numpy as npcon = sql.connect('test.bd',isolation_level=None)cur = con.cursor()cur.execute("CREATE TABLE foobar (id INTEGER PRIMARY KEY, array BLOB)")cur.execute("INSERT INTO foobar VALUES (?,?)", (None,np.arange(0,500,0.5)))con.commit()我是否可以使用另一個模塊將numpy數(shù)組放入表中?還是可以將numpy數(shù)組轉(zhuǎn)換為sqlite將接受的Python中的另一種形式(例如可以拆分的列表或字符串)?性能不是重點。我只希望它能工作!謝謝!
3 回答

阿波羅的戰(zhàn)車
TA貢獻1862條經(jīng)驗 獲得超6個贊
這對我有用:
import sqlite3 as sql
import numpy as np
import json
con = sql.connect('test.db',isolation_level=None)
cur = con.cursor()
cur.execute("DROP TABLE FOOBAR")
cur.execute("CREATE TABLE foobar (id INTEGER PRIMARY KEY, array BLOB)")
cur.execute("INSERT INTO foobar VALUES (?,?)", (None, json.dumps(np.arange(0,500,0.5).tolist())))
con.commit()
cur.execute("SELECT * FROM FOOBAR")
data = cur.fetchall()
print data
data = cur.fetchall()
my_list = json.loads(data[0][1])
添加回答
舉報
0/150
提交
取消