[Rio-pm] Problemas utilizando o DBD::CSV
breno
breno em rio.pm.org
Sexta Maio 10 19:10:52 PDT 2013
Oi Giuliani!
Aparentemente, ao contrário do que a documentação afirma, o
"csv_tables" só pode ser definido depois do connect(). Não parei pra
olhar pq mas, enquanto isso não funciona:
my $dbh = DBI->connect( 'DBI:CSV:', undef, undef, {
csv_tables => {
artifacts => {
file => 'ArtifactsList.csv',
},
}
});
isso aqui funciona:
my $dbh = DBI->connect ('DBI:CSV:');
$dbh->{csv_tables}{artifacts} = {
sep_char => ",",
file => 'ArtifactsList.csv',
};
Olhando o seu exemplo, acho que vale lembrar também que dizer os
col_names e skip_first_row => 1 faz pouco sentido. Se a primeira linha
tem os nomes dos campos da tabela, o DBD::CSV vai achar e resolver
isso pra vc automaticamente (ou seja, para cada tabela é só passar o
'sep_char' e o 'file').
[]s!
-b
2013/5/10 Giuliani Sanches <giulianisanches em gmail.com>:
> Pessoas,
>
> Estou tentando utilizar o DBD::CSV porém enfrentando algumas dificuldades
> como pode ser visto aqui:
>
> https://gist.github.com/khaoz/dcc9e8805b8c45b0fc5f
>
> A mensagem de erro
>
> Execution ERROR: Cannot open D:\Playground\Exporter\artifacts: Permission
> denied (13)
>
> Indica que um determinado diretório de nome artifacts não tem permissão.
>
> O fato é que o diretório não existe (e não irá existir) e o que entendi pela
> documentação do módulo é que o valor f_dir inicial (uma das chaves do $attr
> do método connect) é o diretório corrente e o artifacts usado como chave
> dentro do csv_tables seria o nome da tabela da instrução select e este seria
> executado no ArtifactsList.csv.
>
> Onde esta o "pulo do gato" ?
>
> Abraço.
>
> P.S: Ia copiar a SP-PM tb, mas acho que todo mundo esta em ambas as listas
> :)
>
> Giuliani D. Sanches
> about.me/giulianisanches
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
Mais detalhes sobre a lista de discussão Rio-pm