NAME

App::Repository::MySQL - a MySQL database, accessed through the Repository interface

SYNOPSIS

use App::Repository::MySQL;

(see man pages for App::Repository and App::Repository::DBI for additional methods)

...

DESCRIPTION

The App::Repository::MySQL class encapsulates all access to a MySQL database.

Methods: Import/Export Data From File

import_rows()

* Signature: $rep->import_rows($table, $file);
* Signature: $rep->import_rows($table, $file, $options);
* Param:     $table        string
* Param:     $file         string
* Param:     $options      named
* Param:     columns       ARRAY     names of columns of the fields in the file
* Param:     import_method string    [basic=invokes generic superclass to do work,
                                      insert=loads with multiple-row inserts,
                                      <otherwise>=use "load data infile"]
* Param:     local         boolean   file is on client machine rather than database server
* Param:     replace       boolean   rows should replace existing rows based on unique indexes
* Param:     field_sep     char      character which separates the fields in the file (can by "\t")
* Param:     field_quote   char      character which optionally encloses the fields in the file (i.e. '"')
* Param:     field_escape  char      character which escapes the quote chars within quotes (i.e. "\")
* Return:    void
* Throws:    App::Exception::Repository
* Since:     0.01

Note: If you want to call this with $options->{local}, you will probably
need to make sure that mysql_local_infile=1 is in your DSN.  This might
require a line like the following in your "app.conf" file.

  dbioptions = mysql_local_infile=1

Sample Usage: 

$rep->import_rows("usr","usr.dat");

# root:x:0:0:root:/root:/bin/bash
$rep->import_rows("usr", "/etc/passwd" ,{
    field_sep => ":",
    columns => [ "username", "password", "uid", "gid", "comment", "home_directory", "shell" ],
});

export_rows()

* Signature: $rep->export_rows($table, $file);
* Signature: $rep->export_rows($table, $file, $options);
* Param:     $table        string
* Param:     $file         string
* Param:     $options      named
* Param:     columns       ARRAY     names of columns of the fields in the file
* Param:     export_method string    [basic=invokes generic superclass to do work]
* Param:     field_sep     char      character which separates the fields in the file (can by "\t")
* Param:     field_quote   char      character which optionally encloses the fields in the file (i.e. '"')
* Param:     field_escape  char      character which escapes the quote chars within quotes (i.e. "\")
* Return:    void
* Throws:    App::Exception::Repository
* Since:     0.01

Sample Usage: 

$rep->export_rows("usr","usr.dat");

# root:x:0:0:root:/root:/bin/bash
$rep->export_rows("usr", "passwd.dat" ,{
    field_sep => ":",
    columns => [ "username", "password", "uid", "gid", "comment", "home_directory", "shell" ],
});