Rumah >pangkalan data >tutorial mysql >HadiDB: Pangkalan Data Ringan, Boleh Skala Mendatar dalam Python

HadiDB: Pangkalan Data Ringan, Boleh Skala Mendatar dalam Python

Linda Hamilton
Linda Hamiltonasal
2024-12-26 01:37:09763semak imbas

HadiDB: A Lightweight, Horizontally Scalable Database in Python

HadiDB

HadiDB ialah pangkalan data yang ringan, berskala sangat mendatar yang ditulis dalam Python.

Bagaimana untuk memasang hadidb

pip install hadidb

Buat Pengguna HadiDB

Mencipta pengguna baharu dengan contoh nama pengguna pentadbir dan contoh kata laluan pentadbir menggunakan createUser(). Ia kemudian mengesahkan pengguna yang sama dengan memanggil kaedah pengesahan().

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

Cipta Databse , Pengumpulan dan Skema

Kod ini menyediakan bukti kelayakan pengguna dan skema untuk koleksi pangkalan data. Ia memulakan operasi pangkalan data menggunakan kelas Operasi dengan nama pengguna, kata laluan, pangkalan data dan koleksi yang ditentukan. Akhir sekali, ia memasukkan data yang disediakan ke dalam koleksi dan menyimpan hasilnya.

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)

Sisipkan Data

Sisipkan Data ke dalam Koleksi gunakan db.insert(data) memasukkan data ke dalam koleksi pangkalan data yang ditentukan.

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)
Keputusan:
{
'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
     }
}

Kemas kini Data

Data Kemas Kini db.update(1, update_data) mengemas kini rekod dengan ID 1 dalam pangkalan data menggunakan data_update yang disediakan.

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)
Keputusan:
{
    '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

Pengecam unik (ID) dokumen yang ingin anda dapatkan semula objek tertentu atau ralat jika dokumen itu tidak wujud.

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

Dapatkan Semua Objek

Kaedah getAll mendapatkan semula semua dokumen daripada koleksi yang ditentukan dalam pangkalan data.

result = db.getAll()
print(result)

GetByKey

Kaedah getbykey mendapatkan semula semua dokumen daripada pangkalan data yang sepadan dengan pasangan nilai kunci yang ditentukan. Tidak Menyokong pasangan nilai berbilang kunci

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

GetByKeys

Fungsi getbykeys menggunakan operasi DAN (&&) tersirat. Kedua-dua syarat Contoh (cnic dan bio) jika dipadankan nilai kunci dalam pangkalan data kemudian kembalikan objek yang dipadankan.

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

Kira

Kaedah kiraan mengembalikan jumlah dokumen (atau objek) yang terdapat dalam koleksi yang ditentukan dalam pangkalan data.

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

GeyByKeyCount

Kaedah getbykeyCount mengira bilangan dokumen dalam koleksi yang sepadan dengan pasangan nilai kunci yang ditentukan.

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

Padam

Memadamkan dokumen daripada pangkalan data dengan pengecam uniknya (id)

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

Dapatkan Semua Pangkalan Data

Mendapatkan semula semua pangkalan data yang tersedia dengan menggunakan kaedah get_database() kelas Konfigurasi

pip install hadidb

Dapatkan Semua Koleksi

Mendapatkan semula semua koleksi daripada pangkalan data tertentu menggunakan kaedah get_collection() kelas Konfigurasi.

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

Dapatkan Skema Koleksi Spesifik

Kembalikan Skema koleksi tertentu dengan menggunakan kaedah get_schema() daripada kelas Konfigurasi.

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

Padamkan Koleksi

Memadamkan koleksi tertentu daripada pangkalan data menggunakan kaedah deleteCollection() kelas 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)

Padamkan Pangkalan Data

Memadamkan Pangkalan Data menggunakan kaedah deleteDatabase() kelas 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
Semak Tapak : https://mefiz.com
Dibangunkan oleh : Momin Iqbal

Atas ialah kandungan terperinci HadiDB: Pangkalan Data Ringan, Boleh Skala Mendatar dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn