Я пытаюсь подключиться к существующему файлу базы данных 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, столбец или сопоставленный
ожидаемый объект - получил '<класс' <strong>main .Log '>'
Как я понимаю, в классе Log что-то не так, но я не знаю, что.
Я использовал эту статью для изучения.