NEW

The wait is over. SurrealDB 3.0 is here!

Learn more
Course content preview

2: Creating records

To create a library, we are going to need a record for it. A CREATE statement followed by a table name is all that we need to create a record.

CREATE library;

But since our town is going to have all sorts of places, let's choose a more general table name: place. We can use the SET keyword to give this record a field called place_type so that we know a bit more about it.

CREATE place SET place_type = "library";

Response

[
{
id: place:b7ldqo00t5kiunaok4pf,
place_type: 'library'
}
]

Since we didn't give this place record an ID, SurrealDB will create a random one. Record IDs are composed of the table name, a : after the table name, and something else. If you don't choose an exact record ID, a random GUID (a Globally Unique Identifier) will be added after the : which gives a output like place:wrwfldojvfcyl9gbe5v3.

But you can choose your own record ID instead, like place:1 or place:my_library. Just make sure that it isn't already used, because you can't create a record that has the same ID as another one.

-- Works fine 
CREATE place:my_library;
-- Error: already exists
CREATE place:my_library;

Response

-------- Query --------

[
{
id: place:my_library
}
]

-------- Query --------

'Database record `place:my_library`
already exists'