Skip to main content

The official SurrealDB library for Python.

Project description

SurrealDB Icon


SurrealDB Logo SurrealDB Logo

SurrealDB SurrealDB is the ultimate cloud
database for tomorrow's applications

Develop easier.   Build faster.   Scale quicker.


         

Blog   Github	  LinkedIn   Twitter   Youtube   Dev   Discord   StackOverflow

surrealdb.py

The official SurrealDB library for Python.

See the documentation here

Getting Started

First install SurrealDB if you haven't already.

Install the python library

pip install surrealdb

Alternatively, you can use install it using Poetry

poetry add surrealdb

Connect to SurrealDB

Create a new surreal.py file and add the following code to try out some basic operations using the SurrealDB SDK.

from surrealdb import Surreal

async def main():
    """Example of how to use the SurrealDB client."""
    async with Surreal("ws://localhost:8000/rpc") as db:
        await db.signin({"user": "root", "pass": "root"})
        await db.use("test", "test")
        await db.create(
            "person",
            {
                "user": "me",
                "pass": "safe",
                "marketing": True,
                "tags": ["python", "documentation"],
            },
        )
        print(await db.select("person"))
        print(await db.update("person", {
            "user":"you",
            "pass":"very_safe",
            "marketing": False,
            "tags": ["Awesome"]
        }))
        print(await 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
        await db.query("""
        insert into person {
            user: 'me',
            pass: 'very_safe',
            tags: ['python', 'documentation']
        };
        
        """)
        print(await db.query("select * from person"))
        
        print(await db.query("""
        update person content {
            user: 'you',
            pass: 'more_safe',
            tags: ['awesome']
        };
        
        """))
        print(await db.query("delete person"))

if __name__ == "__main__":
    import asyncio

    asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

surrealdb-0.3.2.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

surrealdb-0.3.2-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file surrealdb-0.3.2.tar.gz.

File metadata

  • Download URL: surrealdb-0.3.2.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.1.0

File hashes

Hashes for surrealdb-0.3.2.tar.gz
Algorithm Hash digest
SHA256 8ab570b8d4299f35443f0d4fa636947cf1a18f67fd88acc00e5e5a36356e82cd
MD5 d02b095f07f8fa97c83e5589a68003f5
BLAKE2b-256 c85496cf73205b8d17adb453c766d4f3e4577d179bd52b3a455cc85ca5d5003f

See more details on using hashes here.

File details

Details for the file surrealdb-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: surrealdb-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.1.0

File hashes

Hashes for surrealdb-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 30424971be9698f0fce61dc8387576d19302e0bb0ae708d311e79a261ead7701
MD5 d98ba364e0b96349618983af4d3b41b7
BLAKE2b-256 1614937d306fabcc8319404b245b37f6e39a8da6c84b829bb25841fc2136f495

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page