Is there any implementation of database by perl

If you can live without SQL and relations, give DBM::Deep a try. Easiest of all, I wouldn't use it in production environment for sure, but it is ideal for rapid prototyping.

DESCRIPTION

A unique flat-file database module, written in pure perl. True multi-level hash/array support (unlike MLDBM, which is faked), hybrid OO / tie() interface, cross-platform FTPable files, ACID transactions, and is quite fast. Can handle millions of keys and unlimited levels without significant slow-down. Written from the ground-up in pure perl -- this is NOT a wrapper around a C-based DBM. Out-of-the-box compatibility with Unix, Mac OS X and Windows.


I would suggest using DBD::SQLite. This is a self-contained database management system with no dependency to external binaries (unlike most others DBI drivers). It has nice options such as creating in-memory databases.

SQLite is an open-source RDBMS that implements a significant subset of the SQL ANSI Standard.

DBD::SQLite is a legitimate DBI driver, so it conforms to the API of the great DBI module, which is the de-facto Perl standard interface for databases.

From the documentation:

DBD::SQLite is a Perl DBI driver for SQLite, that includes the entire thing in the distribution. So in order to get a fast transaction capable RDBMS working for your perl project you simply have to install this module, and nothing else.