问题描述
我正在将样本 CSV 中的数据加载到 Employee 中。 CSV 有 2 列 - 出生日期和雇用日期。代码是这样的-
load csv with headers from 'file:///northwind/employees2.csv' as row
merge(c:Country {country : row.country})
merge(e:Employee {
employeeId:toInteger(row.employeeID),firstName : row.firstName,birthDate : date(datetime({epochmillis:apoc.date.parse(row.birthdate,'ms','yyyy-MM-dd')})),hireDate : date(datetime({epochmillis:apoc.date.parse(row.hiredate,'yyyy-MM-dd')}))
})
create (e) - [:HAS_COUNTRY {countryName:c.country}] -> (c);
出现以下错误 -
无法从以下位置构建日期时间:NO_VALUE(在第 2 行处理文件“/C:/neo4j423/import/northwind/employees.csv”时失败。)
我在 csv 中只尝试了 1 行。出生日期和雇佣日期都可用。 如果我尝试使用诸如“2001-01-01”之类的硬编码值,则代码工作正常。
有什么想法可能出问题了吗?
谢谢
马诺杰·乔希
解决方法
密码查询语言区分大小写。
因此您需要修复大小写错误:
-
row.birthdate
=>row.birthDate
-
row.hiredate
=>row.hireDate
我的错。我使用了错误的列 - 出生日期而不是出生日期。 对不起...