neo4j 导入带有关系的 CSV



我正在导入一个 .我从关系数据库导出的 CSV 文件。导入进展顺利,但是当我尝试使用其分配的标签在创建的节点之间创建关系时,它正在为关系创建新节点,而不是使用现有标签。我已经为此敲打了 3 天 - 有什么想法吗?

法典:

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:///seshatdata/sellable_unit_features.csv" AS line 
WITH line, SPLIT(line.ship_dt, '-') AS date
CREATE (sellableunit:SellableUnit {sellable_unit_id: line.sellable_unit_id, sellable_unit_nm: line.sellable_unit_nm, sellable_unit_version_id: line.sellable_unit_version_id})
MERGE (feature:Feature {Feature_id:line.feature_id, feature_nm: line.feature_nm})
CREATE (SellableUnit)-[r:CONTAINS]->(Feature)
SET r.start_year = TOINT(date[0]);

显然,这条线CREATE (SellableUnit)-[r:CONTAINS]->(Feature)才是这里的罪魁祸首——我只是不知道为什么。

您的密码查询有拼写错误。Cypher 对于变量声明区分大小写。

变量名称区分大小写,可以包含下划线和 字母数字字符(A-Z,0-9(,但必须始终以 信。如果需要其他字符,可以引用变量 使用反引号 ('( 符号

试试吧:

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:///seshatdata/sellable_unit_features.csv" AS line 
WITH line, SPLIT(line.ship_dt, '-') AS date
CREATE (sellableunit:SellableUnit {sellable_unit_id: line.sellable_unit_id, sellable_unit_nm: line.sellable_unit_nm, sellable_unit_version_id: line.sellable_unit_version_id})
MERGE (feature:Feature {Feature_id:line.feature_id, feature_nm: line.feature_nm})
CREATE (sellableUnit)-[r:CONTAINS]->(feature)
SET r.start_year = TOINT(date[0]);

您将节点存储到名为sellableUnit(小写 s(的变量中,但在CREATE语句中使用名为SellableUnit(大写 S(的变量。feature也是如此.

相关内容

最新更新