HadiDB
HadiDB is a lightweight, highly horizontally scalable database written in Python.
How to install hadidb
pip install hadidb
Create User HadiDB
Creates a new user with the example
username admin
and example
password admin
using createUser()
. It then authenticates the same user by calling the authentication()
method.
from HadiDB.operation import User user = User("admin", "admin") user.createUser() # Creating a new user in the HadiDB user.authentication() # Authenticating the HadiDB user
Result:
{'status': 200, 'message': 'Database user Created'}
Create Databse , Collection and Schema
This code sets up user credentials and a schema for a database collection. It initializes a database operation using the Operation
class with the specified username
, password
, database
, and collection
. Finally, it inserts the provided data
into the collection and stores the result.
from HadiDB.operation import Operation username = "admin" password = "admin" database = "mefiz.com" collection = "authUser" schema = { "username":"Unique", "password":"Hash", "cnic":"Unique", "picture":"Image", "bio":"Text" } db = Operation(username,password,database,collection) db.create_database(schema)
Insert Data
Insert Data into the Collection use db.insert(data)
inserts the data
into the specified database collection.
from HadiDB.operation import Operation username = "admin" password = "admin" database = "mefiz.com" collection = "authUser" db = Operation(username,password,database,collection) data = { "username":"hadidb", "password":"12345", "cnic":"123232442", "picture":"user/my/hadidb.jpg", "bio":"HadiDB is the Best ;)" } result = db.insert(data) print(result)
Result:
{ 'status': 200, 'message': 'Data insert successfully', 'data': { 'username': 'hadidb', 'password': '12345', 'cnic': '123232442', 'picture': 'user/my/hadidb.jpg', 'bio': 'HadiDB is the Best ;)', 'id': 1 } }
Update Data
Update Data db.update(1, update_data)
updates the record with the ID 1
in the database using the provided update_data
.
from HadiDB.operation import Operation username = "admin" password = "admin" database = "mefiz.com" collection = "authUser" db = Operation(username,password,database,collection) update_data = { "username": "hadidb_update", "password": "123455", "cnic": "1232324423", "picture": "user/my/hadidb1.jpg", "bio": "HadiDB is the Best ;) update bio" } result = db.update(1,update_data) print(result)
Result:
{ 'status': 200, 'message': 'Data Update successfully', 'data': { 'username': 'hadidb_update', 'password': '123455', 'cnic': '1232324423', 'picture': 'user/my/hadidb1.jpg', 'bio': 'HadiDB is the Best ;) update bio', 'id': 1 } }
GetByID
The unique identifier (ID) of the document you want to retrieve specific object or an error if the document does not exist.
result = db.getbyID(1) print(result)
Get All Object
The getAll
method retrieves all documents from the specified collection in the database.
result = db.getAll() print(result)
GetByKey
The getbykey
method retrieves all documents from the database where the specified key-value pair matches. Not Support multi keys values pairs
result = db.getbykey({ "username":"momin" }) print(result)
GetByKeys
The getbykeys function uses an implicit AND (&&)
operation. Both conditions Example (cnic and bio)
if matched key values in the database then return the matched object.
result = db.getbykeys({ "cnic":"123232442", "bio":"HadiDB is the Best ;) update bio" }) print(result)
Count
The count
method returns the total number of documents (or objects) present in the specified collection in the database.
result = db.count() print(result)
Result:
{'status': 200, 'count': 1}
GeyByKeyCount
The getbykeyCount
method counts the number of documents in the collection where the specified key-value pair matches.
result = db.getbykeyCount({ "username":"momin" })
Delete
Deletes a document from the database by its unique identifier (id
)
result = db.delete(1) print(result)
Reuslt:
{'status': 200, 'message': 'data delete successful'}
Get All Database
Retrieves all available databases by using the get_database()
method of the Configuration
class
from HadiDB.operation import Configuration print(Configuration().get_database())
Get All Collection
Retrieves all collections from a specific database using the get_collection()
method of the Configuration
class.
from HadiDB.operation import Configuration database = "mefiz.com" print(Configuration(database).get_collection())
Get Schema of Specfic Collection
Return Schema of a specific collection by using get_schema()
method from the Configuration
class.
from HadiDB.operation import Configuration database = "mefiz.com" collection = "authUser" print(Configuration(database,collection).get_schema())
Delete Collection
Deletes a specific collection from a database using the deleteCollection()
method of the DatabaseDeletionService
class.
from HadiDB.operation import DatabaseDeletionService db = DatabaseDeletionService(username,password,database,collection) print(db.deleteCollection())
Delete Database
Deletes Database using the deleteDatabase()
method of the DatabaseDeletionService
class.
from HadiDB.operation import DatabaseDeletionService db = DatabaseDeletionService(username,password,database,collection) print(db.deleteDatabase())
Top comments (0)