Pourquoi seul le second exemple ajoute l'extension au nom de fichier et qu'est ce que le "/ r" dans ".csv/r" pour.Dans DBD :: CSV, que signifie un/r dans l'attribut f_ext?
#!/usr/bin/env perl
use warnings; use strict;
use 5.012;
use DBI;
my $dbh = DBI->connect("DBI:CSV:f_dir=/home/mm", { RaiseError => 1, f_ext => ".csv/r"});
my $table = 'new_1';
$dbh->do("DROP TABLE IF EXISTS $table");
$dbh->do("CREATE TABLE $table (id INT, name CHAR, city CHAR)");
my $sth_new = $dbh->prepare("INSERT INTO $table(id, name, city) VALUES (?, ?, ?,)");
$sth_new->execute(1, 'Smith', 'Greenville');
$dbh->disconnect();
# --------------------------------------------------------
$dbh = DBI->connect("DBI:CSV:f_dir=/home/mm", { RaiseError => 1 });
$dbh->{f_ext} = ".csv/r";
$table = 'new_2';
$dbh->do("DROP TABLE IF EXISTS $table");
$dbh->do("CREATE TABLE $table (id INT, name CHAR, city CHAR)");
$sth_new = $dbh->prepare("INSERT INTO $table(id, name, city) VALUES (?, ?, ?,)");
$sth_new->execute(1, 'Smith', 'Greenville');
$dbh->disconnect();
f_ext = .csv Dans ce cas, DBD :: File ouvrira uniquement "table.csv" si les deux "table.csv" et "table" existent dans le datadir. f_ext = .csv/r Dans ce cas, l'extension est requise et tous les noms de fichiers qui ne correspondent pas sont ignorés. Cela signifie-t-il que, avec "f_ext = .csv", je peux lire des fichiers sans extension (dans les données). J'ai essayé de le faire, mais ça n'a pas marché. –