Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获得';整数超出范围';炼金术错误_Python_Postgresql_Sqlalchemy_Blaze_Odo - Fatal编程技术网

Python 获得';整数超出范围';炼金术错误

Python 获得';整数超出范围';炼金术错误,python,postgresql,sqlalchemy,blaze,odo,Python,Postgresql,Sqlalchemy,Blaze,Odo,因此,我使用odo进行数据迁移,但遇到了以下错误: sqlalchemy.exc.DataError: (psycopg2.DataError) integer out of range 源表和目标表都具有相同的架构,但在后端执行的sql语句中,整数值具有.0。与源表中的整数34一样,显示为34.0: [SQL: INSERT INTO table2 (col1, col2,col3) VALUES (%(col1)s, %(col2)s, %(col3)s] [parameters:

因此,我使用
odo
进行数据迁移,但遇到了以下错误:

sqlalchemy.exc.DataError: (psycopg2.DataError) integer out of range  
源表和目标表都具有相同的架构,但在后端执行的sql语句中,整数值具有.0。与源表中的整数
34
一样,显示为
34.0

[SQL: INSERT INTO table2 (col1, col2,col3) VALUES (%(col1)s, %(col2)s, %(col3)s] 
[parameters: ({'col2' : val2', 'col3' : val3', 'col1' : val1})]

如果需要更多信息,请告诉我。

sql字符串应为:

INSERT INTO table2 (col1, col2, col3) VALUES (
    %(col1)s::numeric::int, 
    %(col2)s::numeric::int, 
    %(col3)s::numeric::int
)
如果目标列不可为null,并且源值可以是
None
,则合并它:

    coalesce(%(col1)s::numeric::int, 0), 

sql字符串应为:

INSERT INTO table2 (col1, col2, col3) VALUES (
    %(col1)s::numeric::int, 
    %(col2)s::numeric::int, 
    %(col3)s::numeric::int
)
如果目标列不可为null,并且源值可以是
None
,则合并它:

    coalesce(%(col1)s::numeric::int, 0), 

这可能是因为参数字典中整数列的
NaN
值。添加了一个新问题:这可能是因为参数字典中整数列的值为
NaN
。添加了一个新问题:sql字符串是发生错误时odo显示为输出的内容。我无法更改它。由于我无法更改sql字符串,我如何才能执行此操作?sql字符串是发生错误时odo显示为输出的内容。我不能更改它。因为我不能更改sql字符串,我如何才能执行此操作?