Python Data Persistence - แพ็คเกจ dbm

แพ็กเกจ dbm นำเสนอพจนานุกรมเช่นฐานข้อมูลสไตล์ DBM ของอินเทอร์เฟซ DBM stands for DataBase Manager. สิ่งนี้ถูกใช้โดยระบบปฏิบัติการ UNIX (และ UNIX like) ไลบรารี dbbm เป็นเครื่องมือฐานข้อมูลอย่างง่ายที่เขียนโดย Ken Thompson ฐานข้อมูลเหล่านี้ใช้อ็อบเจ็กต์สตริงที่เข้ารหัสไบนารีเป็นคีย์เช่นเดียวกับค่า

ฐานข้อมูลจัดเก็บข้อมูลโดยใช้คีย์เดียว (คีย์หลัก) ในที่เก็บข้อมูลขนาดคงที่และใช้เทคนิคการแฮชเพื่อให้สามารถดึงข้อมูลได้อย่างรวดเร็วด้วยคีย์

แพ็คเกจ dbm ประกอบด้วยโมดูลต่อไปนี้ -

  • dbm.gnu โมดูลคืออินเทอร์เฟซสำหรับเวอร์ชันไลบรารี DBM ที่ใช้งานโดยโปรเจ็กต์ GNU

  • dbm.ndbm โมดูลมีอินเทอร์เฟซสำหรับการใช้งาน UNIX nbdm

  • dbm.dumbใช้เป็นตัวเลือกสำรองในเหตุการณ์ไม่พบการใช้งาน dbm อื่น ๆ สิ่งนี้ไม่ต้องการการอ้างอิงภายนอก แต่ช้ากว่าที่อื่น

>>> dbm.whichdb('mydbm.db')
'dbm.dumb'
>>> import dbm
>>> db=dbm.open('mydbm.db','n')
>>> db['name']=Raj Deshmane'
>>> db['address']='Kirtinagar Pune'
>>> db['PIN']='431101'
>>> db.close()

ฟังก์ชัน open () อนุญาตให้ใช้โหมดแฟล็กเหล่านี้ -

ซีเนียร์ คุณค่าและความหมาย
1

'r'

เปิดฐานข้อมูลที่มีอยู่สำหรับการอ่านเท่านั้น (ค่าเริ่มต้น)

2

'w'

เปิดฐานข้อมูลที่มีอยู่สำหรับการอ่านและการเขียน

3

'c'

เปิดฐานข้อมูลสำหรับการอ่านและเขียนสร้างขึ้นหากไม่มีอยู่

4

'n'

สร้างฐานข้อมูลใหม่ที่ว่างเปล่าเสมอเปิดสำหรับการอ่านและเขียน

วัตถุ dbm เป็นพจนานุกรมเหมือนวัตถุเช่นเดียวกับวัตถุชั้นวาง ดังนั้นการดำเนินการพจนานุกรมทั้งหมดสามารถทำได้ วัตถุ dbm สามารถเรียกใช้เมธอด get (), pop (), append () และ update () โค้ดต่อไปนี้จะเปิด 'mydbm.db' พร้อมกับแฟล็ก 'r' และวนซ้ำคอลเลกชันของคู่คีย์ - ค่า

>>> db=dbm.open('mydbm.db','r')
>>> for k,v in db.items():
   print (k,v)
b'name' : b'Raj Deshmane'
b'address' : b'Kirtinagar Pune'
b'PIN' : b'431101'