a subset of Perl 5 DBI ported to Perl 6 to use while experts build the Real Deal
Perl Perl6
Pull request Compare This branch is 1 commit ahead, 64 commits behind mberends:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


=begin pod

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

The roadmap for DBI v2 L<http://search.cpan.org/~timb/DBI/Roadmap.pod>
published in November 2004 laid out database plans for Perl 5 and 6.
Specifically there is a Parrot DBDI project that will give the same DBD
facilities to all Parrot based languages.  See also

Because no code is available yet, MiniDBI plans to temporarily fill the
gap, being a subset of the Perl 5 DBI v1 in Perl 6.  Although this not
on the DBI v2 roadmap, let's say if it looks like a DBI, and it talks
like a DBI, then it is a DBI.  The links above suggest that some of the
development done here might even become part of the official DBI v2!

Until there is a benefit in doing it otherwise, the MiniDBD drivers stay
and install together with the main MiniDBI.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.

=head1 STATUS
The MySQL driver performs CRUD operations.  Testing with production data
is urgently needed.  Testers, please volunteer!

=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:MiniDBI> module.
The Perl 5 L<doc:DBI> and L<doc:DBI::DBD>.

This README and the documention of the MiniDBI and the MiniDBD 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 Martin Berends.

=end pod