1.
Neo.ClientError.Statement.SemanticError: Cannot merge the following node because of null property value for 'accidentReason': (:Accident {accidentReason: null}) (Failure when processing file '/D:/Neo4j/neo4j-community-5.13.0-windows/neo4j-community-5.13.0/import/node_accident.csv' on line 273.)
数据存储的excel文件中看不出有null的数据,是因为之前第一列有数据,我使用backspace键(<-)删除了,在Excel文件中看不出来,但是在Excel转化为CSV文件时,会有null数据(记事本打开才可以看见),显示为,,,,,,,,,, 这种一般都是有很多null数据
解决办法:(1)手动在CSV文件中删除多余的,,,,
(2)从原始的Excel文件中删除报错的行(选中出错的那一行,整行删除)
(3)将MERGE换成CREATE
// 导入Accident节点
LOAD CSV WITH HEADERS FROM "file:///node_accident.csv" AS row
MERGE (a:Accident {accidentId: row.accidentId, accidentName: row.accidentName,accidentLocation:row.accidentLocation,accidentTime:row.accidentTime,accidentWeather:row.accidentWeather,accidentReason:row.accidentReason,exposeIssues:row.exposeIssues,preventionOrSolutionMeasures:row.preventionOrSolutionMeasures});
2.
在执行// 导入Work节点 LOAD CSV WITH HEADERS FROM "file:///node_work.csv" AS row MERGE (w:Work {workId: row.workId, workName: row.workName});之后,报错Neo.ClientError.Statement.SemanticError Cannot merge the following node because of null property value for 'workId': (:Work {workId: null}) (Failure when processing file '/D:/Neo4j/neo4j-community-5.13.0-windows/neo4j-community-5.13.0/import/node_work.csv' on line 2.)。
文件内容:
在执行
// 导入accidenCategory节点
LOAD CSV WITH HEADERS FROM "file:///node_accidentCategory.csv" AS row
MERGE (ac:accidentCategory {accidentCategory: row.accidentCategoryId, accidentCategoryName: row.accidentCategoryName}); 之后,返回结果Added 5 labels, created 5 nodes, set 10 properties, completed after 9 ms.
文件内容:
第一次迟迟解决不了的原因是觉得二者的区别node_work.csv之前的文件在import中被我删掉重新又放进来,node_accident.csv是第一次导入到import中,报错的原因跟这个有关
后来发现是我的CSV文件数据有问题,报错的文件列名多了一个标签:ID,去掉即可。
注意:这个错误将MERGE换成CREATE是治标不治本,看着是不报错,将节点导入到数据库中了,但是CREATE会自动省略workId这一列。是不解决问题的,并且会给后边导入关系节点造成很大的麻烦。
错误示范:(自动忽略XXId列)
正确示范:(包含XXXId列)