Документация Python неофициальный перевод
Содержание страницы

11.12. dumbdbm – Переносимая реализация DBMdumbdbm – Portable DBM implementation

Примечание

Модуль dumbdbm был переименован в dbm.dumb в Python 3. Инструмент 2to3 автоматически адаптирует импорты при преобразовании исходного кода в Python 3.

Примечание

Модуль dumbdbm предназначен как крайнее запасное решение для модуля anydbm, когда недоступен ни один более надёжный модуль. Модуль dumbdbm не рассчитан на скорость и используется гораздо реже, чем другие модули баз данных.

Модуль dumbdbm предоставляет постоянный интерфейс, похожий на словарь, который полностью написан на Python. В отличие от других модулей, таких как gdbm и bsddb, не требует внешних библиотек. Как и в других постоянных отображениях, ключи и значения должны быть строками.

Модуль определяет следующее:

exception dumbdbm.error

Возбуждается при ошибках, специфичных для dumbdbm, например при ошибках ввода-вывода. KeyError возбуждается при общих ошибках отображения, например при указании неверного ключа.

dumbdbm.open(filename[, flag[, mode]])

Открывает базу данных dumbdbm и возвращает объект dumbdbm. Аргумент filename – это базовое имя файла базы данных (без каких-либо расширений). При создании базы данных dumbdbm создаются файлы с расширениями .dat и .dir.

Необязательный аргумент flag в настоящее время игнорируется; база данных всегда открывается для обновления и будет создана, если она не существует.

Необязательный аргумент mode – это режим файла Unix, используемый только при создании базы данных. По умолчанию это восьмеричное 0666 (и будет изменено текущей umask).

Изменено в версии 2.2: Аргумент mode игнорировался в более ранних версиях.

В дополнение к методам, похожим на словарные, объекты dumbdm предоставляют следующий метод:

dumbdbm.close()

Закрыть базу данных dumbdm.

См. также

Модуль anydbm

Общий интерфейс для баз данных стиля dbm.

Модуль dbm

Интерфейс, подобный библиотеке DBM/NDBM.

Модуль gdbm

Интерфейс, аналогичный библиотеке GNU GDBM.

Модуль shelve

Модуль персистентности, который хранит нестроковые данные.

Модуль whichdb

Вспомогательный модуль для определения типа существующей базы данных.

11.12.1. Объекты dumbdbmDumbdbm Objects

В дополнение к методам, предоставляемым классом UserDict.DictMixin, объекты dumbdbm предоставляют следующие методы.

dumbdbm.sync()

Синхронизирует каталог и файлы данных на диске. Этот метод вызывается методом sync() объектов Shelve.