Pessoas,<div><br></div><div>Gostaria de usar o DBIx::Class::Schema::Loader para gerar um squema para um banco em que cada tabela está em um arquivo tipo CSV (o delimitador, no entando é \t )</div><div><br></div><div>No caso do DBD::CSV, existe uma particularidade que é eu defino as tabelas através de driver flags, ou seja, eu tenho de passar quais as tabelas no dsn...</div>

<div><br></div><div>Eu tentei o seguinte com o DBIx::Class ::Schema::Loader:</div><div><br></div><div><code></div><div><div>use DBIx::Class::Schema::Loader qw/ make_schema_at /;</div><div><br></div><div>make_schema_at(</div>

<div>      'SIATAB::Schema',</div><div>      { debug => 1,</div><div>        dump_directory => './lib',</div><div>      },</div><div>      [ 'dbi:CSV:f_dir=.;csv_sep_char=\t;csv_eol=\n;', '', '',</div>

<div>         {</div><div>           csv_tables => {</div><div>               processo => { file => "allprocessos.tab" }</div><div>           },</div><div><span class="Apple-tab-span" style="white-space:pre">     </span> },</div>

<div>      ],</div><div>);</div></div><div></code></div><div><br></div><div>e o resultado foi:</div><div><br></div><div><div>Donato-Vianas-MacBook-Pro:exportsia donatoaz$ perl <a href="http://loader.pl">loader.pl</a> </div>

<div>Undefined subroutine &DBIx::Class::Schema::catch called at /Library/Perl/5.10.0/DBIx/Class/Schema.pm line 830.</div></div><div><br></div><div>mais genérico impossível...</div><div><br></div><div>Alguma luz?</div>

<div><br></div><div>ps: eu consigo conectar usando pure DBI:</div><div><br></div><div><code_que_funfa></div><div><div>use DBI;</div><div><br></div><div>my $csvh = DBI->connect("DBI:CSV:f_dir=.;csv_sep_char=\t;csv_eol=\n;") or die($DBI::errstr);</div>

<div>$csvh->{'csv_tables'}->{'processo'} = { 'file' => 'allprocessos.tab' };</div><div><br></div><div>my $query = "SELECT * FROM processo";</div><div>    my $sth   = $csvh->prepare ($query);</div>

<div>    $sth->execute ();</div><div>    while (my $row = $sth->fetchrow_hashref) {</div><div>        print "Found result row: id = ", $row->{codprocesso},</div><div>              ", name = ", $row->{descprocesso}, "\n";</div>

<div>    }</div><div>$sth->finish ();</div></div><div></code_que_funfa></div><div><br></div><div>Cheers!</div><div>-- <br>Donato Azevedo<br>
</div>