Database interface for Perl 6
Perl 6
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


=begin pod

=head1 NAME
DBIish - a simple database interface for Rakudo Perl 6

The DBIish project provides a simple database interface for Perl 6.

It's not a port of the Perl 5 DBI and does not intend to become one.
It is, however, a simple and useful database interface for Perl 6 that works
now. It looks like a DBI, and it talks like a DBI (although it only offers
a subset of the functionality).

It is based on Martin Berends' MiniDBI project, but unlike MiniDBI, DBDish
aims to provide an interface that takes advantage of Perl 6 idioms

=head1 DBDish CLASSES
Until there is a benefit in doing it otherwise, the DBDish drivers stay
and install together with the main DBIish.pm6 in a single project.  The
first DBD is for MySQL, there will probably soon be SQLite, Postgres and
FreeTDS.  An AnyData driver for memory or file formats such as YAML or
XML is also planned.

=head1 TESTING
The initial test script is merely a concatenation of all the scripts in
the Perl 5 DBD::mysql test suite, translated to Perl 6.  It's not
efficient but indispensable to assess coverage of the existing DBI
feature set.  Only about 15% of the suite has been converted so far,
with 86 tests passing, 0 todo and 0 skipped.

The test suite will change to eliminate the current slowness and
redundancy.  It will contain general tests as well as tests for
particular databases.  The aim is to make the suite demonstrate portable
and non portable operations.

=head1 ROADMAP
Add some DBDs.  Improve the test suite.  Attract more contributors.

We'll add a driver for the DBDI project (L<>)
once it has sufficient functionality. Then the existing drivers would be
migrated to become DBDI drivers. Once DBDI and driver functionality has reached
a suitable level a full port of DBI can be built over DBDI.

=head1 STATUS
Mysql and postgresql drivers perform CRUD operations, text only.
PostgreSQL uses prepared statements and placeholders.

=head1 BUGS
Numbers with decimal points are passed to the database server as quoted
strings, because of far-too-simple checking in execute().

=head1 SEE ALSO
The Perl 6 Pod in the L<doc:DBIish> module.
The Perl 5 L<doc:DBI> and L<doc:DBI::DBD>.

This README and the documention of the DBIish and the DBDish modules
are in the proposed Pod6 format.  The reasons are that Perl 6 does not
allow any other kind of Pod, and that Pod6 needs more examples.  View it
with an appropriate formatter if your system has one.

Use these files at your risk and without warranty.  Give due credit if
you do.  Written by Moritz Lenz, based on the MiniDBI code by Martin Berends.

See the F<CREDITS> file for a list of all contributors.

=end pod