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.1.1.tar.gz
(5.7 kB
view hashes)
Built Distribution
Close
Hashes for Dictabase-2.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b31c5c60befca962ac625cdc6dcba386f90b56467eb3eeb4f2d9c75c0902d5f7 |
|
MD5 | f9055cf7961d9401f97075b80bc6b526 |
|
BLAKE2b-256 | 11c5c74c53b55074ea52c2e935412e37ffb0ef713a13a100201863cd6d1b2b3b |