首页 > 解决方案 > 由于转换的特殊字符,Amazon Redshift 副本上出现“字符串长度超过 DDL 长度”错误

问题描述

当尝试使用该命令将带有导出 MySQL 数据的 csv 从 S3 导入 Redshift 时COPY,我遇到了String length exceeds DDL length错误。

该表设置为与 mysql 数据库具有相同的 VARCHAR 长度,但在接近最大长度的字符串上,它会失败,因为特殊字符被转换为双点,从而增加了长度。

例如,在错误日志中它显示它试图输入Rechtsanw .. lte,而在 csv 中它是Rechtsanw ä lte

对于具有特殊字符的较短字符串,它可以工作,并且一旦插入表中,它们就会与特殊字符一起显示。

我尝试使用 运行命令TRUNCATECOLUMNS,这将允许操作完成,但字符串被截断,使它们比双点转换回特殊字符后的最大长度短。

关于为什么会发生这种情况以及我能做些什么来解决它的任何想法?

标签: csvamazon-s3amazon-redshift

解决方案


推荐阅读