SurrealDB Docs Logo

Enter a search query

Quick start

In this short guide, you will learn how to install, import, and initialize the SDK, as well as perform the basic data manipulation queries. This guide uses the Surreal class, but this example would also work with AsyncSurreal class, with the addition of await in front of the class methods.

Install

pip install surrealdb

Learn the basics

# Import the Surreal class from surrealdb import Surreal # Using a context manger to automatically connect and disconnect with Surreal("ws://localhost:8000/rpc") as db: db.signin({"username": 'root', "password": 'root'}) db.use("namepace_test", "database_test") # Create a record in the person table db.create( "person", { "user": "me", "password": "safe", "marketing": True, "tags": ["python", "documentation"], }, ) # Read all the records in the table print(db.select("person")) # Update all records in the table print(db.update("person", { "user":"you", "password":"very_safe", "marketing": False, "tags": ["Awesome"] })) # Delete all records in the table print(db.delete("person")) # You can also use the query method # doing all of the above and more in SurrealQl # In SurrealQL you can do a direct insert # and the table will be created if it doesn't exist # Create db.query(""" insert into person { user: 'me', password: 'very_safe', tags: ['python', 'documentation'] }; """) # Read print(db.query("select * from person")) # Update print(db.query(""" update person content { user: 'you', password: 'more_safe', tags: ['awesome'] }; """)) # Delete print(db.query("delete person"))

Next steps

Now that you have learned the basics of the SurrealDB SDK for Python, you can learn more about the SDK and its methods in the methods section and data types section.