我知道如果我尝试使用ORM进行选择查询,我可以使用print
方法打印要生成的SQL:
print session.query(MyModel)
应该返回select * from MyModel
(确切的SQL可能会有所不同,但想法就在那里)。
我现在有一段代码,我在其中创建一个父对象,循环一些数据以创建连接到具有relationship的父对象的子对象,然后调用session.add(parent_object)
后跟{{1 }}
除非产生错误,否则我认为无法生成错误。
有没有办法查看用于插入数据的SQL语句?
产生的错误是:
session.commit()
其中为我arg = (<class 'sqlalchemy.exc.ProgrammingError'>, ProgrammingError("(pg8000.core.ProgrammingError) (u'ERROR', u'ERROR', u'22001'... too long for type character varying(10)', u'varchar.c', u'624', u'varchar')",), <traceback object at 0x10c98bb00>)
唯一的列插入的值为varchar(10)