无法在Cassandra中将NULL复制到INT(TIMESTAMP)列中

时间:2016-07-17 23:52:24

标签: csv cassandra

我在Cassandra有一个表(cqlsh 5.0.1 | Cassandra 3.5.0):

  

CREATE TABLE IF NOT NOT EXISTS tytandb.test1

     

(BS_CUSTOMER_ID INT,

     

CRM_CUSTOMER_ID INT,

     

ID INT,

     

PRIMARY KEY(BS_CUSTOMER_ID));

我有一个CSV文件:

  

" BS_CUSTOMER_ID"" CRM_CUSTOMER_ID"" ID"

     

" 1179"" 4"" 4"

     

" 1226"" 122"" 122"

     

" 1237"" 161"""

我使用以下命令在CQLSH中加载此文件:

  

COPY TEST1(BS_CUSTOMER_ID,CRM_CUSTOMER_ID,ID)FROM   ' t_customers_13.csv' HEADER =' true' AND DELIMITER =','和   QUOTE ='"' AND NULL ='';

我收到此错误消息:

  

无法导入1行:ParseError - int()的文字无效   基数10:'',放弃而不重试

它是导致错误的最后一行中的第3个值(NULL)。

为什么我不能将NULL(空值)复制到INT列中?我可以做什么来将NULL复制到INT列?

我对TIMESTAMP列有同样的问题。

使用VARCHAR可以,我可以将NULL值复制到VARCHAR列中。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我在JIRA中找到了一个错误描述:

https://issues.apache.org/jira/browse/CASSANDRA-11549

这个补丁在Linux和Windows上都适用于我:

https://github.com/stef1927/cassandra/commit/6e7664380bb6ddea37efd5f866b7631fdc84bdac