Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

a subset of Perl 5 DBI ported to Perl 6 to use while experts build the Real Deal

tree: 69d6f1ddf0

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 t
Octocat-spinner-32 Makefile
Octocat-spinner-32 README
Octocat-spinner-32 deps.proto
README
=begin pod

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

=head1 DESCRIPTION
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
http://www.nntp.perl.org/group/perl.perl6.language/2005/07/msg22054.html

Because no code is available yet, FakeDBI 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!

=head1 DBD CLASSES
Until there is a benefit in doing it otherwise, the FakeDBD drivers stay
and install together with the main FakeDBI.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:FakeDBI> module.
The Perl 5 L<doc:DBI> and L<doc:DBI::DBD>.

This README and the documention of the FakeDBI and the FakeDBD 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.

=head1 LICENSE and COPYRIGHT
Use these files at your risk and without warranty.  Give due credit if
you do.  Written by Martin Berends.

=end pod
Something went wrong with that request. Please try again.