我使用
Python和psycopg以编程方式将数据
添加到Postgre
sql表中 – 这很好用.
有时候,包含列的文本值太长,所以我收到消息:
ERROR: value too long for type character varying(1000)
其中数字是违规列的宽度.
有没有办法确定哪个列导致了错误? (除了比较每列的长度,看它是否是1000)
非常感谢@Tometzky,他的
评论指出了我正确的方向.
我没有尝试确定哪个列导致了问题,而是修改了我的Python脚本以确保在插入数据库之前截断了该值.
>使用select_schema.columns中的select column_name,data_type,character_maximum_length访问表的模式,其中table_name =’test’>在构建INSERT语句时,使用模式定义来标识字符字段并在必要时进行截断