A database interface that mimics a python dictionary.
Project description
A database interface that acts like a python dictionary
Install
pip install dictabase
Example
Click here to see a complete example main.py
Create a new table
# Create a table representing users from dictabase import BaseDictabaseTable class UserClass(BaseDictabaseTable): pass newUser = New(UserClass, name='Grant', age=31) newUser = New(UserClass, name='Bob', age=99) # there is now a sqlite database containing the 2 users. Yup, thats it!
Look up items in the database
from dictabase import FindOne, FindAll allUsers = FindAll(UserClass) # allUsers is an iterable of all the UserClass objects that exists in the database print('allUsers=', list(allUsers)) >> allUsers= [<UserClass: name='Grant', age=31>, <UserClass: name='Bob', age=99>] user = FindOne(UserClass, name='Grant') print('user=', user) >>user= <UserClass: name='Grant', age=31> user = FindOne(UserClass, name='NotARealName') print('user=', user) >>user= None
Read/Write to the database
# find an object that was previously put in the database user = FindOne(UserClass, name='Grant') # increment the age of the user by 1 user['age'] += 1 # Thats it! the database has now been updated with the new age
Drop a table
from dictabase import Drop Drop(UserClass, confirm=True) # the table has been removed from the database
Delete a specific row in a table
from dictabase import Delete # find an object that was previously put in the database user = FindOne(UserClass, name='Grant') Delete(user) # the user has been removed from the database
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Dictabase-2.3.0.tar.gz
(6.8 kB
view hashes)
Built Distribution
Close
Hashes for Dictabase-2.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed3fbc0c85e851f267c7445f8288ca7a303fd2b93ee2316c30f6f4cc07ec9791 |
|
MD5 | 1868725e6d097955a0889745b9116602 |
|
BLAKE2b-256 | c0cc466c0ff001deef6c1e068b6ef17b72c3a7eece258bdd234346ce1d283984 |