我正在尝试连接到现有的sqlite数据库文件。
我有一个名为Log
的表
ALTER TABLE [Log] (
[LogId] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL
, [Date] datetime NOT NULL
, [Level] nvarchar(50) NOT NULL COLLATE NOCASE
, [Logger] nvarchar(255) NOT NULL COLLATE NOCASE
, [Message] text DEFAULT NULL NULL
);
这是我的python代码:
#...#
engine = create_engine('sqlite:///C:\\Windows\\Path\\To\\My\\internalhostdb.db', echo = True)
Base = declarative_base(engine)
class Log(Base):
__tablename__ = 'Log'
logid = Column(Integer, primary_key = True) # one column for test
app = Flask(__name__)
api = Api(app, prefix="/api/v1")
class LogCollection(Resource):
def get(self):
session = loadSession()
res = session.query(Log).all() # error appers at this line
result = { 'result' : [object_as_dict(row) for row in res]}
return jsonify(result)
错误:
sqlalchemy.exc.InvalidRequestError:SQL表达式,列或映射 预期的实体-获得了'
main .Log'>'
我了解到Log类有问题,但是我不知道是什么。
我用this文章来学习。