csv - 由于转换的特殊字符,Amazon Redshift 副本上出现“字符串长度超过 DDL 长度”错误
问题描述
当尝试使用该命令将带有导出 MySQL 数据的 csv 从 S3 导入 Redshift 时COPY
,我遇到了String length exceeds DDL length
错误。
该表设置为与 mysql 数据库具有相同的 VARCHAR 长度,但在接近最大长度的字符串上,它会失败,因为特殊字符被转换为双点,从而增加了长度。
例如,在错误日志中它显示它试图输入Rechtsanw .. lte,而在 csv 中它是Rechtsanw ä lte。
对于具有特殊字符的较短字符串,它可以工作,并且一旦插入表中,它们就会与特殊字符一起显示。
我尝试使用 运行命令TRUNCATECOLUMNS
,这将允许操作完成,但字符串被截断,使它们比双点转换回特殊字符后的最大长度短。
关于为什么会发生这种情况以及我能做些什么来解决它的任何想法?
解决方案
推荐阅读
- sql - System.Data.SqlClient.SqlException:''.' 附近的语法不正确。'
- android - 为什么我不能从 androidx.fragment.app.Fragment 访问 getParentFragmentManager()
- reactjs - 使用正则表达式和 useState 钩子响应验证输入
- r - ggplot 自定义主题:框架的一些图形问题
- reactjs - 根据条件隐藏项目动态
- c++ - 子类化组合框时如何抑制自动搜索(Win32/WinAPI)
- cordova - 如何解决 Cordova 中无法加载 SourceMap 的问题?
- sql - 对每个属性组合投票最多的元素
- angular - 角度对话框不显示默认值
- php - 如何从附件 ID 获取图像 URL 并将其放置在 Wordpress PHP 中的图像 src 中?