2016-04-13 2 views
0

У меня есть сценарий сценария onetime .cql, написанный для загрузки данных в neo4j с использованием cypher.Условие IF в neo4j cypher сценарий импорта для загрузки csv

У нас есть несколько файлов ~ 60 файлов, которые я упоминаю в сценарии the.cql. Могу ли я иметь условие if в каждой инструкции загрузки, которая проверяет, существует ли файл. Если он существует, то запустите этот блок кода еще skip это.

что-то вроде этого:

if(file1 exists) // how can i have if statement like this? 
    LOAD CSV WITH HEADERS FROM 
    "file:///C:/file1" 
    AS csvLine 
    CREATE (p:Capability{id:csvLIne.ID,name:csvLine.Name}); 

    if(file2 exists) // how can i have if statement like this? 
    LOAD CSV WITH HEADERS FROM 
    "file:///C:/file2" 
    AS csvLine 
    CREATE (p:Position{id:csvLIne.ID,name:csvLine.Name}); 

    if(file3 exists) 
    LOAD CSV WITH HEADERS FROM 
    "file:///C:/file3" 
    AS csvLine 
    CREATE (p:busProc{id:csvLIne.ID,name:csvLine.Name}); 

    if(file4 exists) 
    LOAD CSV WITH HEADERS FROM 
    "file:///C:/file4" 
    AS csvLine 
    CREATE (p:Role{id:csvLIne.ID,name:csvLine.Name}); 

ответ

0

Cypher не обеспечивает способ проверки существования файла, так что это не возможно, чтобы делать то, что вы предлагаете.

Поскольку вы работаете в Windows, вы можете написать пакетный файл, который проверял наличие каждого файла и запускал соответствующий скрипт Cypher для каждого найденного.

+0

Даже я думал о том же варианте, что и вы. Просто хотел, чтобы второе мнение о том, что это невозможно сделать с помощью cypher – NAS

Смежные вопросы