Maison >base de données >tutoriel mysql >HadiDB : une base de données légère et évolutive horizontalement en Python

HadiDB : une base de données légère et évolutive horizontalement en Python

Linda Hamilton
Linda Hamiltonoriginal
2024-12-26 01:37:09761parcourir

HadiDB: A Lightweight, Horizontally Scalable Database in Python

HadiDB

HadiDB est une base de données légère et hautement évolutive horizontalement écrite en Python.

Comment installer HadidB

pip install hadidb

Créer un utilisateur HadiDB

Crée un nouvel utilisateur avec l'exemple de nom d'utilisateur admin et l'exemple de mot de passe admin à l'aide de createUser(). Il authentifie ensuite le même utilisateur en appelant la méthode Authentication().

from HadiDB.operation import User
user = User("admin", "admin")
user.createUser() # Creating a new user in the HadiDB
user.authentication() # Authenticating the HadiDB user
Résultat:
{'status': 200, 'message': 'Database user Created'}

Créer une base de données, une collection et un schéma

Ce code configure les informations d'identification de l'utilisateur et un schéma pour une collection de bases de données. Il initialise une opération de base de données à l'aide de la classe Operation avec le nom d'utilisateur, le mot de passe, la base de données et la collection spécifiés. Enfin, il insère les données fournies dans la collection et stocke le résultat.

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)

Insérer des données

Insérer des données dans la collection use db.insert(data) insère les données dans la collection de base de données spécifiée.

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)
Résultat:
{
'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
     }
}

Mettre à jour les données

Mettre à jour les données db.update(1, update_data) met à jour l'enregistrement avec l'ID 1 dans la base de données à l'aide du update_data fourni.

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)
Résultat:
{
    '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
    }
}

ObtenirParID

L'identifiant unique (ID) du document que vous souhaitez récupérer, un objet spécifique ou une erreur si le document n'existe pas.

result = db.getbyID(1)
print(result)

Obtenir tous les objets

La méthode getAll récupère tous les documents de la collection spécifiée dans la base de données.

result = db.getAll()
print(result)

ObtenirParClé

La méthode getbykey récupère tous les documents de la base de données où correspond la paire clé-valeur spécifiée. Ne prend pas en charge les paires de valeurs multi-clés

result = db.getbykey({
    "username":"momin"
 })
print(result)

ObtenirByKeys

La fonction getbykeys utilise une opération ET (&&) implicite. Les deux conditions Exemple (cnic et bio) si les valeurs clés correspondent dans la base de données, renvoient l'objet correspondant.

result = db.getbykeys({
    "cnic":"123232442",
    "bio":"HadiDB is the Best ;) update bio"
})
print(result)

Compter

La méthode count renvoie le nombre total de documents (ou objets) présents dans la collection spécifiée dans la base de données.

result = db.count()
print(result)
Résultat:
{'status': 200, 'count': 1}

GeyByKeyCount

La méthode getbykeyCount compte le nombre de documents de la collection auxquels correspond la paire clé-valeur spécifiée.

result = db.getbykeyCount({
    "username":"momin"
    })

Supprimer

Supprime un document de la base de données par son identifiant unique (id)

result = db.delete(1)
print(result)
Résultat :
{'status': 200, 'message': 'data delete successful'}

Obtenir toute la base de données

Récupère toutes les bases de données disponibles en utilisant la méthode get_database() de la classe Configuration

pip install hadidb

Obtenez toute la collection

Récupère toutes les collections d'une base de données spécifique à l'aide de la méthode get_collection() de la classe Configuration.

from HadiDB.operation import User
user = User("admin", "admin")
user.createUser() # Creating a new user in the HadiDB
user.authentication() # Authenticating the HadiDB user

Obtenir le schéma d'une collection spécifique

Renvoyer le schéma d'une collection spécifique en utilisant la méthode get_schema() de la classe Configuration.

{'status': 200, 'message': 'Database user Created'}

Supprimer la collection

Supprime une collection spécifique d'une base de données à l'aide de la méthode deleteCollection() de la classe DatabaseDeletionService.

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)

Supprimer la base de données

Supprime la base de données à l'aide de la méthode deleteDatabase() de la classe DatabaseDeletionService.

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)
GitHub : https://github.com/MominIqbal-1234/hadidb
Vérifier le site : https://mefiz.com
Développé par : Momin Iqbal

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn