Creating Nodes

The actor’s name for Michael Caine is misspelled in the video. It has been corrected in the transcript.

Creating nodes

In this lesson you will learn how to write Cypher code to create nodes in the graph.

Using the Movies data model, you will create and execute Cypher code to create actors and movies in our graph.

We use the MERGE keyword to create a pattern in the database.

After the MERGE keyword, we specify the pattern that we want to create. Usually this will be a single node or a relationship between two nodes.

Suppose we want to create a node to represent Michael Caine. Run this Cypher code to create the node.

cypher
MERGE (p:Person {name: 'Michael Caine'})

It creates a single node in the graph. Note that when you use MERGE to create a node, you must specify at least one property that will be the unique primary key for the node.

Verify that the node was created.

cypher
MATCH (p:Person {name: 'Michael Caine'})
RETURN p

Executing multiple Cypher clauses

We can also chain multiple MERGE clauses together within a single Cypher code block.

cypher
MERGE (p:Person {name: 'Katie Holmes'})
MERGE (m:Movie {title: 'The Dark Knight'})
RETURN p, m

This code creates two nodes, each with a primary key property. Because we have specified the variables p and m, we can use them in the code to return the created nodes.

Using CREATE instead of MERGE to create nodes

Cypher has a CREATE clause you can use for creating nodes. The benefit of using CREATE is that it does not look up the primary key before adding the node. You can use CREATE if you are sure your data is clean and you want greater speed during import. We use MERGE in this training because it eliminates duplication of nodes.

Check your understanding

1. Creating a node

Which Cypher keywords can you use to create nodes?

  • INSERT

  • ADD

  • CREATE

  • MERGE

Hint

There are 2 keywords you can use. One keyword checks to see if the node already exists so it won’t be duplicated. The other keyword does not check for duplicates, but it is more performant for bulk importing of data.

Solution

The two correct keywords for creating data in Cypher are CREATE and MERGE.

2. Using MERGE

What should you specify when using MERGE to create a node?

  • ❏ The number of properties the node will have.

  • ✓ The label for the node.

  • ❏ The index to be used for the node.

  • ✓ The name and value for the property that will be the primary key for the node.

Hint

What two things are used to uniquely identify a node in the graph?

Solution

When merging a node you should specify the label for the node and the name and value of the properties that uniquely identify the node.

Summary

In this lesson, you learned how to create nodes in the graph. In the next challenge, you will demonstrate your skill of creating a node.