simple dao and ORM for sqlite
Project description
SqliteDao
A simplified DAO for SQL abstraction for personal projects. All in one file.
pip install sqlitedao
Pet project: crawfish
Examples
Create Table easily:
dao = SqliteDao.get_instance(DB_PATH)
create_table_columns = {
"name": "text",
"position": "text",
"age": "integer",
"height": "text"
}
dao.create_table(TEST_TABLE_NAME, create_table_columns)
Or with a bit more control:
columns = ColumnDict()
columns\
.add_column("name", "text", "PRIMARY KEY")\
.add_column("position", "text")\
.add_column("age", "integer")\
.add_column("height", "text")
create_table_indexes = {
"name_index": ["name"]
}
dao.create_table(TEST_TABLE_NAME, columns, create_table_indexes)
Create ORM classes by inheriting TableItem
easily and deal with even less code,
dao.insert_item(item)
dao.insert_items(items)
dao.update_item(changed_item)
dao.update_items(changed_items)
dao.find_item(item_with_only_index_populated)
...
see test files for example. This can greatly simplify and ease the creation cost for pet projects based on sqlite.
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
sqlitedao-0.5.1.tar.gz
(5.3 kB
view hashes)
Built Distribution
Close
Hashes for sqlitedao-0.5.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc97636bb27c46442c975a17c135d8888d9b1d2e4ae4b78d927c60df0567f544 |
|
MD5 | 0ecba766b37c1454511f60639d328e04 |
|
BLAKE2b-256 | 6fa579f9e70e36be7b0f3143d20a7d8c303481e06d10c07f3edf4564f3af06a5 |