Вы знаете базу данных, написанную на Perl с интерфейсом DBI? - PullRequest
2 голосов
/ 06 июня 2010

Знаете ли вы базу данных, написанную исключительно на Perl с интерфейсом DBI?Или что можно использовать, если MySql или Postgresql не установлены и я хочу использовать только Perl?

Спасибо.

Хорошо, я просто хотел что-то, что можно использовать с Catalyst.

Ответы [ 6 ]

17 голосов
/ 06 июня 2010

А как насчет SQLite? DBD :: SQLite

13 голосов
/ 06 июня 2010

Я считаю, DBD :: CSV - это простая реализация DBD, которая использует Text :: CSV для сохранения данных в файлах CSV.

8 голосов
/ 06 июня 2010

Это сильно зависит от того, что вы считаете «базой данных».

Если вы просто хотите что-то для хранения ваших данных, есть несколько доступных баз данных Perl. Некоторые из них перечислены здесь: http://www.perl.com/pub/a/2004/09/12/embedded.html

  • Tie :: Файл

  • Berkley DB

  • SQLite

    Обратите внимание, что, несмотря на комментарии «SQLite написан на C», которые я видел здесь, в статье прямо говорится :

    Удобно, DBI-драйвер для SQLite, DBD :: SQLite, уже содержит сам механизм базы данных как часть модуль - так что установка этого модуля это все, что требуется, чтобы иметь возможность используйте SQLite из Perl.

Тем не менее, ни один из вышеперечисленных не является реальным механизмом базы данных, поддерживающим транзакции и т. Д., Хотя некоторые позволяют SQL-подобный доступ к языку запросов

Я не знаю ни одного реального движка баз данных, реализованного в Perl.

2 голосов
/ 06 июня 2010

Правило Perl 34:

Если вы можете себе это представить, есть DBD модуль для него;)

http://search.cpan.org/search?m=module&q=DBD::&s=1

1 голос
/ 06 июня 2010

AFAIK, нет базы данных на чистом Perl, которая реляционная , это не очень экономично; вы можете посмотреть в ACME на CPAN.

По сути, у вас есть два варианта: чистый модуль perl, который предоставляет пакет DBD, который оборачивается, например, в файлы .txt, .csv или .xml.

Если их нет, вы также можете реализовать собственную систему стилей BDB / DBM, используя чистый Perl, так же, как это сделал Кен Томпсон в C с DBM. Однако это не будет так сложно, как реляционная база данных на основе SQL.

Если вы планируете использовать SQL, используйте базу данных на основе SQL.

0 голосов
/ 13 октября 2015

DBD :: DBM - это чистый драйвер базы данных Perl, который входит в состав DBI с версии 1.42 (апрель 2004 г.). Он может работать с различными форматами базы данных, используя соответствующие модули, например, BerkleyDB или SDBM_File (основной модуль).

Необходимо объединить это с MLDBM , чтобы получить пригодную для использования базу данных (в противном случае поддерживаются только два столбца на таблицу).

Документация DBD :: DBM довольно обширна и дает хороший обзор различных опций и способов их настройки.

...