.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.0102 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "DBD::Mem 3" .TH DBD::Mem 3 2024-09-13 "perl v5.40.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME DBD::Mem \- a DBI driver for Mem & MLMem files .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 3 \& use DBI; \& $dbh = DBI\->connect(\*(Aqdbi:Mem:\*(Aq, undef, undef, {}); \& $dbh = DBI\->connect(\*(Aqdbi:Mem:\*(Aq, undef, undef, {RaiseError => 1}); \& \& # or \& $dbh = DBI\->connect(\*(Aqdbi:Mem:\*(Aq); \& $dbh = DBI\->connect(\*(AqDBI:Mem(RaiseError=1):\*(Aq); .Ve .PP and other variations on \fBconnect()\fR as shown in the DBI docs and . .PP Use standard DBI prepare, execute, fetch, placeholders, etc. .SH DESCRIPTION .IX Header "DESCRIPTION" DBD::Mem is a database management system that works right out of the box. If you have a standard installation of Perl and DBI you can begin creating, accessing, and modifying simple database tables without any further modules. You can add other modules (e.g., SQL::Statement) for improved functionality. .PP DBD::Mem doesn't store any data persistently \- all data has the lifetime of the instantiated \f(CW$dbh\fR. The main reason to use DBD::Mem is to use extended features of SQL::Statement where temporary tables are required. One can use DBD::Mem to simulate \f(CW\*(C`VIEWS\*(C'\fR or sub-queries. .PP Bundling \f(CW\*(C`DBD::Mem\*(C'\fR with DBI will allow us further compatibility checks of DBI::DBD::SqlEngine beyond the capabilities of DBD::File and DBD::DBM. This will ensure DBI provided basis for drivers like DBD::AnyData2 or DBD::Amazon are better prepared and tested for not-file based backends. .SS Metadata .IX Subsection "Metadata" There're no new meta data introduced by \f(CW\*(C`DBD::Mem\*(C'\fR. See "Metadata" in DBI::DBD::SqlEngine for full description. .SH "GETTING HELP, MAKING SUGGESTIONS, AND REPORTING BUGS" .IX Header "GETTING HELP, MAKING SUGGESTIONS, AND REPORTING BUGS" If you need help installing or using DBD::Mem, please write to the DBI users mailing list at or to the comp.lang.perl.modules newsgroup on usenet. I cannot always answer every question quickly but there are many on the mailing list or in the newsgroup who can. .PP DBD developers for DBD's which rely on DBI::DBD::SqlEngine or DBD::Mem or use one of them as an example are suggested to join the DBI developers mailing list at and strongly encouraged to join our IRC channel at . .PP If you have suggestions, ideas for improvements, or bugs to report, please report a bug as described in DBI. Do not mail any of the authors directly, you might not get an answer. .PP When reporting bugs, please send the output of \f(CW\*(C`$dbh\->mem_versions($table)\*(C'\fR for a table that exhibits the bug and as small a sample as you can make of the code that produces the bug. And of course, patches are welcome, too :\-). .PP If you need enhancements quickly, you can get commercial support as described at or you can contact Jens Rehsack at rehsack@cpan.org for commercial support. .SH "AUTHOR AND COPYRIGHT" .IX Header "AUTHOR AND COPYRIGHT" This module is written by Jens Rehsack < rehsack AT cpan.org >. .PP .Vb 1 \& Copyright (c) 2016\- by Jens Rehsack, all rights reserved. .Ve .PP You may freely distribute and/or modify this module under the terms of either the GNU General Public License (GPL) or the Artistic License, as specified in the Perl README file. .SH "SEE ALSO" .IX Header "SEE ALSO" DBI for the Database interface of the Perl Programming Language. .PP SQL::Statement and DBI::SQL::Nano for the available SQL engines. .PP SQL::Statement::RAM where the implementation is shamelessly stolen from to allow DBI bundled Pure-Perl drivers increase the test coverage. .PP DBD::SQLite using \f(CW\*(C`dbname=:memory:\*(C'\fR for an incredible fast in-memory database engine.