SQLAlchemy编程错误-如何调试?
我正在使用SQLAlchemy 0.5.8,并且看到了以下错误:SQLAlchemy编程错误-如何调试?,sql,sqlalchemy,Sql,Sqlalchemy,我正在使用SQLAlchemy 0.5.8,并且看到了以下错误: ProgrammingError: (ProgrammingError) can't adapt 'INSERT INTO enumeration_value (id, key_id, code, name, notes) VALUES (%(id)s, %(key_id)s, %(code)s, %(name)s, %(notes)s)' {'key_id': 'aac6fc29-4ccd-4fe4-9118-cfbbd044
ProgrammingError: (ProgrammingError) can't adapt 'INSERT INTO enumeration_value (id,
key_id, code, name, notes) VALUES (%(id)s, %(key_id)s, %(code)s, %(name)s, %(notes)s)'
{'key_id': 'aac6fc29-4ccd-4fe4-9118-cfbbd04449fe', 'notes': '', 'code': (u'Barnet',),
'id': 'd0540c97-882e-4a5b-bf14-b3ebcfeea051', 'name': (u'Barnet',)}
但是,使用错误中的值进行直接SQL插入似乎效果很好:
=> INSERT INTO enumeration_value (id, key_id, code, name, notes)
VALUES ('d0540c97-882e-4a5b-bf14-b3ebcfeea051', 'aac6fc29-4ccd-4fe4-9118-cfbbd04449fe',
'Barnet', 'Barnet', '');
INSERT 0 1
如果直接SQL工作正常,我如何开始调试它
顺便说一句,抛出错误的行中似乎根本没有INSERT语句,所以我有点困惑:
File "----barnet.py", line 117, in load_file
instance = model.Session.query(model.EnumerationValue).filter_by(key=key_barnet_level_2, code=level_2).all()
SQLAlchemy filter语句是否生成INSERT命令,或者这恰好是事情开始出错之前的最后一行?解决了这个问题-问题实际上是上面几行的语法错误,带有一个错误的逗号:
key_from = code,
对不起,我浪费了任何人的时间。请结束这个问题 找到了答案-问题实际上是上面几行的语法错误,带有一个错误的逗号:
key_from = code,
对不起,我浪费了任何人的时间。请结束这个问题