Я собираюсь писать в файл базы данных MySQLite, используя Perl модуль DBD: SQLite, и мне интересно, возможно ли это для этого файл должен быть прочитан любым распространением MySQL? Есть ли лучший способ создать простую базу данных MySQL (используя Perl)?
Если это что-то значит, я буду использовать базу данных для хранения пар ключ-значение на основе уникальных идентификационных номеров для ключей. Я попробовал BerkeleyDB, но на Perl его немного не поддержали, и я не мог заставить его работать в прошлом в некоторых версиях Windows.
Изменить: я знаю, что BerkeleyDB - лучший способ сделать это, но когда я писал для него сценарии, большинство методов имеют TODO, и у меня были загадочные ошибки в Windows Server 2003 с использованием того же самого воздухонепроницаемого кода который работал в течение 2 недель прямо на моей машине Win7 дома.
Я использую Perl DBI module, который я могу использовать для чтения баз данных с использованием MySQL или SQLite. Все, что вам нужно, это правильный драйвер. Фактически, если вы правильно пишете свою программу, база данных (SQLite или MySql) не имеет значения. Ваша программа будет работать с одним из них.
Однако вы не можете использовать базу данных SQLite, а затем рассматривать ее как базу данных MySQL. Это два разных существа. Ваша программа может быть агностикой базы данных, но как только вы выбрали базу данных, вы не можете переключаться туда и обратно. Это будет похоже на открытие базы данных Oracle в виде базы данных MySQL.
Смотрите Эта публикация на Perl Monks для получения дополнительной информации.
MySQL и SQLite - это полностью отдельные системы РСУБД. Нет такой вещи, как MySQLite. Насколько я знаю, MySQL не может читать базы данных SQLite.
Если все, что вам действительно нужно, это хранилище с ключом, возможно, посмотрите на Redis: http://code.google.com/p/redis/
CREATE
, ALTER
т. Д.) От SQLite. Они очень несовместимы. Однако большинство запросов SELECT
.
BerkeleyDB хорошо поддерживается perl. У вас есть выбор между старым DB_File и более полнофункциональным модулем BerkeleyDB.
Но есть множество вариантов. Если вы не хотите запускать отдельный серверный процесс, используйте DBI и DBD:: SQLite или BerkeleyDB или любой из модулей AnyDBM_File. Для простого хранилища ключевых значений на сервере существует redis или более старый memcached.
MySQLite
нет. ЕстьSQLite
и это фантастика!