我在redShift数据库中有一个方案,其中我的表具有NOT NULL日期列,默认列为SYSDATE。我正在尝试通过COPY命令加载数据,而csv文件中没有date列。但是,当我加载时,COPY命令抛出一个错误。请让我知道,我们还有其他选择可以解决此问题。
答案 0 :(得分:0)
由于您没有提供确切的错误信息,因此,我将尝试使用简单的用例进行导航。然后,我认为您可以尝试复制它。
如果您只是通过default
命令中的copy
跳过了该列,则应该可以解决您的问题,如果通过代码执行Copy
({{1} }等),以确保您java/python
正在进行交易。
使用以下步骤制作一个简单的工作程序。
committing
创建包含以下内容的文件create table sales(
salesid integer not null,
category varchar(10),
update_at timestamp DEFAULT SYSDATE);
。
Test.csv
运行以下命令。
1,Cat1
2,Cat2
3,Cat3
4,Cat1
5,Cat1
6,Cat3
7,Cat1
10,Cat1
输出: 从's3://***//Test.csv'凭证'aws_access_key_id = ********; aws_secret_access_key = ****'分隔符','复制销售(salesid,category); 信息:装入表“ sales”已完成,已成功装入8条记录。 COPY;
Copy sales(salesid,category) from 's3://***/Test.csv' credentials'aws_access_key_id=*******;aws_secret_access_key=********' delimiter ',';