Aiosqlite

asyncio bridge to the standard sqlite3 module
Alternatives To Aiosqlite
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Tortoise Orm3,8399844 days ago151August 11, 2023504apache-2.0Python
Familiar asyncio ORM for python, built with relations in mind
Databases3,517309021 days ago41December 18, 2022124bsd-3-clausePython
Async database support for Python. 🗄
Prisma Client Py1,3121911 days ago27August 28, 2023180apache-2.0Python
Prisma Client Python is an auto-generated and fully type-safe database client designed for ease of use
Piccolo1,1022814 days ago243September 11, 2023104mitPython
A fast, user friendly ORM and query builder which supports asyncio.
Aiosqlite943523272 months ago24April 17, 202330mitPython
asyncio bridge to the standard sqlite3 module
Funboost501
3 days ago43June 17, 20223apache-2.0Python
pip install funboost,python全功能分布式函数调度框架,。支持python所有类型的并发模式和全球一切知名消息队列中间件,python函数加速器,框架包罗万象,一统编程思维,兼容50% python编程业务场景,适用范围广。只需要一行代码即可分布式执行python一切函数。
Aioodbc268834 months ago10July 06, 201914apache-2.0Python
aioodbc - is a library for accessing a ODBC databases from the asyncio
Piccolo_admin246
15 days ago109July 04, 202236mitPython
A powerful web admin for your database.
Web Portal136
11 days ago10agpl-3.0Python
Web Portal is a all-in-one web dashboard, providing many widgets to build a personal portal. With the ability to load external plugins.
Ormdantic119
19 days ago8January 02, 202313mitPython
Asynchronous ORM that uses pydantic models to represent database tables ✨
Alternatives To Aiosqlite
Select To Compare


Alternative Project Comparisons
Readme

aiosqlite: Sqlite for AsyncIO

Documentation Status PyPI Release Changelog MIT Licensed

aiosqlite provides a friendly, async interface to sqlite databases.

It replicates the standard sqlite3 module, but with async versions of all the standard connection and cursor methods, plus context managers for automatically closing connections and cursors:

async with aiosqlite.connect(...) as db:
    await db.execute("INSERT INTO some_table ...")
    await db.commit()

    async with db.execute("SELECT * FROM some_table") as cursor:
        async for row in cursor:
            ...

It can also be used in the traditional, procedural manner:

db = await aiosqlite.connect(...)
cursor = await db.execute('SELECT * FROM some_table')
row = await cursor.fetchone()
rows = await cursor.fetchall()
await cursor.close()
await db.close()

aiosqlite also replicates most of the advanced features of sqlite3:

async with aiosqlite.connect(...) as db:
    db.row_factory = aiosqlite.Row
    async with db.execute('SELECT * FROM some_table') as cursor:
        async for row in cursor:
            value = row['column']

    await db.execute('INSERT INTO foo some_table')
    assert db.total_changes > 0

Install

aiosqlite is compatible with Python 3.8 and newer. You can install it from PyPI:

$ pip install aiosqlite

Details

aiosqlite allows interaction with SQLite databases on the main AsyncIO event loop without blocking execution of other coroutines while waiting for queries or data fetches. It does this by using a single, shared thread per connection. This thread executes all actions within a shared request queue to prevent overlapping actions.

Connection objects are proxies to the real connections, contain the shared execution thread, and provide context managers to handle automatically closing connections. Cursors are similarly proxies to the real cursors, and provide async iterators to query results.

License

aiosqlite is copyright Amethyst Reese, and licensed under the MIT license. I am providing code in this repository to you under an open source license. This is my personal repository; the license you receive to my code is from me and not from my employer. See the LICENSE file for details.

Popular Asyncio Projects
Popular Sqlite Projects
Popular Control Flow Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Python
Sqlite
Sqlite3
Asyncio