在过去的两天中,我一直在检查此站点和其他一些站点上的可用答案。
我遇到以下问题(COPY FROM CSV文件)需要帮助。我创建了KEYSPACECOLUMN FAMILY时没有任何问题,但是当我尝试将CS​​V文件复制到表/列族中时收到了COLUMN FAMILY NOT FOUND。我在下面包括了我正在使用的语法。我非常感谢您为解决此问题提供的帮助。 (Cassandra 2.0.6,CQL3.1.1)

我是CQLSH的新手。

CREATE KEYSPACE KS_TERA
  WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 };

CREATE COLUMNFAMILY TERA
         (BIT_ID int PRIMARY KEY,
    YEAR int ,
    DAY_OF_MONTH int ,
    BIT_DATE timestamp ,
    COMP_ID int ,
    CARRIER varchar ,
    CARRIER_NUM int ,
    ORIGIN_SHIP_ID int
         )
          WITH COMPACT STORAGE;

COPY TERA FROM ‘TERA.CSV’  WITH DELIMITER = ‘,’ AND HEADER = FALSE;


我收到一个COLUMN FAMILY NOT FOUND错误。

最佳答案

这是因为COPY命令区分大小写,因此必须在命令中替换表名(列族)及其列,如下所示:

COPY tera FROM ‘TERA.CSV’  WITH DELIMITER = ‘,’ AND HEADER = FALSE;


如果有列,则如下所示:

COPY tera (column1, column2, ... , columnn) FROM ‘TERA.CSV’  WITH DELIMITER = ‘,’ AND HEADER = FALSE;


希望它现在对某人有帮助...

08-28 09:21