簡體   English   中英

將CSV加載到Neo4j時出錯

[英]Errors for loading CSV into Neo4j

我正在嘗試將本地存儲的.csv文件加載到Neo4j中。 我也嘗試過將其發布到Google表格中,但這並沒有使我更接近所需。

我已經將csv存儲在我的導入文件夾中,文件路徑為:

“ C:\\ Users \\ FJ1993.Neo4jDesktop \\ neo4jDatabases \\ database-325e28a1-76ac-4268-820e-844bda8d4812 \\ installation-3.4.0 \\ import \\ GTD sample_location_target_attacker.csv

在嘗試加載到Neo4j的過程中,我嘗試了兩種方法,這些方法基於所見的教程和Neo4j文檔:

1)

從“ file:// C:/Users/FJ1993/.Neo4jDesktop \\ neo4jDatabases / database-325e28a1-76ac-4268-820e-844bda8d4812 \\ installation-3.4.0 / import / GTD”中的HEAD中加載CSV文件

錯誤是

Neo.ClientError.Statement.SyntaxError:無效的輸入“ i”:預期的“ \\”,“'',“”,“ b”,“ f”,“ n”,“ r”,“ t”,UTF16或UTF32 (第1行,第127列(偏移量:126))“從文件\\ C:/Users/FJ1993/.Neo4jDesktop \\ neo4jDatabases / database-325e28a1-76ac-4268-820e-844bda8d4812 \\ installation-3.4加載帶有標題的CSV文件.0 / import / GTD“ sample_location_target_attacker.csv WITH line”

2)

從“ file:// C:/Users/FJ1993/.Neo4jDesktop \\ neo4jDatabases / database-325e28a1-76ac-4268-820e-844bda8d4812 \\ installation-3.4.0 / import / GTD sample_location_target_attacker.csv”作為標頭加載CSV

錯誤是

Neo.ClientError.Statement.SyntaxError:無效的輸入“ i”:預期的“ \\”,“'',“”,“ b”,“ f”,“ n”,“ r”,“ t”,UTF16或UTF32 (第1行,第127列(偏移量:126))“從文件\\ C:/Users/FJ1993/.Neo4jDesktop \\ neo4jDatabases / database-325e28a1-76ac-4268-820e-844bda8d4812 \\ installation-3.4加載帶有標題的CSV文件.0 / import / GTD sample_location_target_attacker.csv“ AS csvDoc”

3)我也嘗試從發布的Google工作表上載。

相應的鏈接是https://docs.google.com/spreadsheets/d/e/2PACX-1vSOpbMUwFnf7gMYm7JaB3gzWGV7or0qU7cLIsjwApq4sH63v88O1fd0RrmbxvBlVWMfVASh0sw9zJX_/pubhtml

我的密碼是:

從“ https://docs.google.com/spreadsheets/d/e/2PACX-1vSOpbMUwFnf7gMYm7JaB3gzWGV7or0qU7cLIsjwApq4sH63v88O1fd0RrmbxvBlVWMfVASh0sw9wSw9zJX_

錯誤消息是:

Neo.DatabaseError.General.UnknownError:在https://docs.google.com/spreadsheets/d/e/2PACX-1vSOpbMUwFnf7gMYm7JaB3gzWGV7or0qU7cLIsjwApq4sH63v88O1fd0RrmbxvBlVWMMJ處以引號結尾,並且在此處以-4開頭的AX引用-a在該引號后的該字段中是字符。 不支持。 這是我讀到的:'docs-smheo“:'

有誰知道如何將csv文件導入Neo4j? 我沒有足夠的能力來編寫命令行,並且完全依賴於GUI。

謝謝

看起來您在“ import / GTD”之后的錯誤位置加上了引號,在文件之后缺少正斜杠,因此您不應該指定完整路徑。

您的文件路徑中還包含正斜杠和反斜杠。 使用正斜杠,但由於未指定完整路徑,因此僅當導入文件夾中包含文件夾時,此功能才有用。

為了安全起見,我建議您在GTD之后刪除空格。

試試這個,希望對您有所幫助:

LOAD CSV WITH HEADERS FROM "file:///GTD sample_location_target_attacker.csv" WITH line

原版的

LOAD CSV WITH HEADERS FROM "file://C:/Users/FJ1993/.Neo4jDesktop\neo4jDatabases/database-325e28a1-76ac-4268-820e-844bda8d4812\installation-3.4.0/import/GTD" sample_location_target_attacker.csv WITH line

首先,您應該使用FIELDTERMINATOR';'來精確化字段分隔符 為; 這不應該出現在您的內容中。 我用 只要有可能。

neo4j網站上有很多免費的教育內容,而市場上的好書也增加了教學方法。

無恥的插件:我建議“ Learning Neo4j”第二版(破壞者:我是作者)

我認為您的問題出在導入文件的路徑中。

引發錯誤時,在'... 4812 \\ installation ...'的'i'下是否有'^'?

(很難看到,但我敢打賭它在那里!)

Cypher正在分析命令行(包括引用的文件名),並將“ \\”解釋為轉義序列的開始。 它還沒有嘗試讀取您的輸入文件。

您需要使用“ /”作為路徑分隔符。

由於您要加載的文件位於導入目錄中,因此您可能不需要完整路徑。 我發現:

LOAD CSV WITH HEADERS FROM "file:///Neo4jQuestion.csv" as line 
CREATE (SomeNode {location:line.location, target:line.target, attacker:line.attacker});

在我的Windows機器上工作。 (請注意“ file:”后的三個斜杠)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM