«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Взглянем на новый модуль Python — dbm.sqlite3.

Взглянем на новый модуль Python — dbm.sqlite3.

Опубликовано 8 ноября 2024 г.
Просматривать:701

A look into the new module in Python  - dbm.sqlite3

Модуль dbm в Python предоставляет простой и эффективный интерфейс для создания и управления постоянными хранилищами значений ключей. Он позволяет хранить и извлекать данные с использованием уникальных ключей и часто используется для кэширования, управления сеансами и других подобных задач.

С выпуском Python 3.13.0 в семейство dbm был добавлен новый модуль — dbm.sqlite3. Этот модуль использует мощный механизм базы данных SQLite для обеспечения серверной части модуля dbm, позволяя пользователям хранить и извлекать данные в базе данных SQLite. Полученные файлы можно открыть и изменить с помощью любого браузера SQLite или встроенного SQLite CLI (интерфейс командной строки).

Основное преимущество использования dbm.sqlite3 заключается в том, что он обеспечивает повышенную производительность и эффективность по сравнению с другими вариантами серверной части, такими как dbm.ndbm или dbm.gnu. Это связано с тем, что базовый движок SQLite оптимизирован по скорости и надежности.

Чтобы использовать dbm.sqlite3, вам необходимо импортировать модуль в ваш скрипт Python, используя оператор:

import dbm.sqlite3

Далее вы можете открыть базу данных SQLite, используя метод open(), который принимает следующие параметры:

  1. имя_файла – путь к файлу базы данных, который нужно открыть.

  2. флаг — определяет режим, в котором будет открыта база данных. Доступные варианты:

  • 'r' (по умолчанию): открывает существующую базу данных только для чтения.
  • 'w': открывает существующую базу данных для чтения и записи.
  • 'c': открывает базу данных для чтения и записи, создавая ее, если она еще не существует.
  • 'n': Всегда создает новую пустую базу данных, открытую для чтения и записи.
  1. mode – режим доступа к файлу Unix (по умолчанию: восьмеричное 0o666), используется только тогда, когда необходимо создать базу данных.

Вот пример того, как открыть базу данных SQLite с помощью dbm.sqlite3:

db = dbm.sqlite3.open("mydatabase.db", flag="c") 

Метод open() возвращает объект, который ведет себя как отображение, то есть у него есть такие методы, как get() и set() для получения и хранения данных соответственно. Он также поддерживает метод close() для закрытия базы данных и оператор with для управления контекстом базы данных.

Вы также можете напрямую манипулировать базой данных с помощью операторов SQL, обратившись к объекту соединения SQLite с помощью метода Connection():

db = dbm.sqlite3.open("mydatabase.db", flag="w") 
conn = db.connection()
conn.execute("CREATE TABLE IF NOT EXISTS fruits (id INTEGER PRIMARY KEY, name TEXT, color TEXT)")
conn.execute("INSERT INTO fruits VALUES (1, 'Apple', 'Red')")
conn.commit() # save changes

В приведенном выше коде мы сначала открываем базу данных в режиме записи и создаем таблицу с именем Fruits с тремя столбцами — идентификатор, имя и цвет. Затем мы вставляем запись в таблицу и фиксируем изменения с помощью метода commit().

В заключение, модуль dbm.sqlite3 в Python 3.13.0 предоставляет удобный и эффективный способ хранения и извлечения данных с использованием баз данных SQLite. Это открывает перед разработчиками широкий спектр возможностей с точки зрения управления и сохранения данных.

Заявление о выпуске Эта статья воспроизводится по адресу: https://dev.to/myexamcloud/a-look-into-the-new-module-in-python-3130-dbmsqlite3-24p0?
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3