Roy*_*lTS 0 varchar amazon-web-services amazon-redshift
我有一个表,我填充了来自文件的制表符分隔数据,这些数据的编码似乎不是utf-8,如下所示:
CREATE TABLE tab (
url varchar(2000),
...
);
COPY tab
FROM 's3://input.tsv'
Run Code Online (Sandbox Code Playgroud)
复制完成后,我运行
SELECT
MAX(LEN(url))
FROM tab
Run Code Online (Sandbox Code Playgroud)
返回1525.我想,因为我在浪费空间,所以我可以通过使用varchar(2000)而不是将列重新调整大约四分之一varchar(1525).但是既不重做COPY也不重新设置新表并插入已导入的数据.在这两种情况下,我得到
error: Value too long for character type
Run Code Online (Sandbox Code Playgroud)
为什么列不能保存这些值?