如何使用 python 更改 psycopg2 中的小数位数和精度?
How to alter decimal scale and precision in psycopg2 using python?
我正在使用包含以下代码的脚本
query = """ALTER TABLE table_name ALTER COLUMN column_name NUMERIC (22,6);"""
self.cursor.execute(query)
self.connection.commit()
但我得到下面的错误
psycopg2.errors.SyntaxError: syntax error at or near "NUMERIC"
你遇到过这样的错误吗?我在网上搜了下,什么都没有。
PS:我使用了DECIMAL而不是Numeric,出现同样的错误
如果您查看 the PostgreSQL documentation for ALTER TABLE
,您会发现您需要使用 TYPE
关键字(强制):
ALTER [ COLUMN ] column_name [ SET DATA ] TYPE data_type [ COLLATE collation ]
[ USING expression ]
ALTER TABLE table_name ALTER COLUMN column_name TYPE NUMERIC (22,6)
此外,此错误表明这是来自 PostgreSQL 的语法错误。实际上,您的问题与 Python 或 Psycopg2:
无关
psycopg2.errors.SyntaxError: syntax error at or near "NUMERIC"
我正在使用包含以下代码的脚本
query = """ALTER TABLE table_name ALTER COLUMN column_name NUMERIC (22,6);"""
self.cursor.execute(query)
self.connection.commit()
但我得到下面的错误
psycopg2.errors.SyntaxError: syntax error at or near "NUMERIC"
你遇到过这样的错误吗?我在网上搜了下,什么都没有。
PS:我使用了DECIMAL而不是Numeric,出现同样的错误
如果您查看 the PostgreSQL documentation for ALTER TABLE
,您会发现您需要使用 TYPE
关键字(强制):
ALTER [ COLUMN ] column_name [ SET DATA ] TYPE data_type [ COLLATE collation ]
[ USING expression ]
ALTER TABLE table_name ALTER COLUMN column_name TYPE NUMERIC (22,6)
此外,此错误表明这是来自 PostgreSQL 的语法错误。实际上,您的问题与 Python 或 Psycopg2:
无关psycopg2.errors.SyntaxError: syntax error at or near "NUMERIC"