Skip to content

A reasonably functional Neo4j driver for the Julia programming language.

License

Notifications You must be signed in to change notification settings

glesica/Neo4j.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This project is no longer actively maintained and probably doesn't work with recent versions of Neo4j. PRs to fix aspects of its functionality are still welcome.

Neo4j.jl

CI codecov.io

A Julia client for the Neo4j graph database.

Really easy to use, have a look at test/runtests.jl for the available methods.

Basic Usage

c = Connection("localhost"; user="neo4j", password="neo4j")
tx = transaction(c)
tx("CREATE (n:Lang) SET n.name = \$name", "name" => "Julia")
tx("MATCH (n:Lang) RETURN n LIMIT {limit}", "limit" => 10)
results = commit(tx)

You can also submit a transaction to the server without committing it. This will return a result set but will keep the transaction open both on the client and server:

results = tx("MATCH (n) RETURN n"; submit=true)

Rollbacks are also supported:

rollback(tx)

If the goal is to simply run a MATCH query and get the result in the form of a DataFrames.DataFrame object, the cypherQuery function can be used. The cypherQuery implementation performs the query in a single transaction which automatically opens and closes the transaction:

results = cypherQuery(c, "MATCH (n) RETURN n.property AS Property")