我嘗試從我的SQLite表中讀取pandas DataFrame。當我運行下面SAWarning:當我使用sqlalchemy和pd.io.sql.read_sql時,無法實例化<class'sqlalchemy.sql.sqltypes.INTEGER'>
import pandas as pd
import sqlalchemy
dbname = "sqlite:////Users/leda/home/Magnetic_stars/SQLite/Magnetic_stars.sqlite"
engine = sqlalchemy.create_engine(dbname)
res = pd.io.sql.read_sql("SELECT * FROM Resolved;", engine)
的代碼,我得到SAWarning:
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/sqlalchemy/dialects/sqlite/base.py:860: SAWarning: Could not instantiate type <class 'sqlalchemy.sql.sqltypes.INTEGER'> with reflected arguments [u'4']; using no arguments.
coltype = self._resolve_type_affinity(type_)
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/sqlalchemy/dialects/sqlite/base.py:860: SAWarning: Could not instantiate type <class 'sqlalchemy.sql.sqltypes.INTEGER'> with reflected arguments [u'2']; using no arguments.
coltype = self._resolve_type_affinity(type_)
看到我issue on github瞭解更多詳情。
我在做什麼錯?這是一個錯誤?
你可以試試以下嗎? 1.使用調試器運行腳本:python -m pdb ./script.py 2.在調試器控制檯中執行'b sqlalchemy/dialects/sqlite/base.py:913,coltype == sqltypes.INTEGER'(不含引號) 3.按c讓調試器運行你的程序 4.執行應該在base.py的第913行停止 - 看看變量type_的值是多少(例如'print type_') – zifot
@zifot,對不起我的延遲與答案。我得到INT(4)。 – drastega