Bonjour j'aimerais optimiser ce bout de code qui insère des enregistrements dans une BD. Il s'agit de routes vers différents hôtes. Le problème est que la taille de l'enregistrement n'est pas fixe (sans dépasser les 8 champs), il dépend du nombre de noeuds dans la route.
voici le format de l'enregistrement:
hôte_a_atteindre;nb_de_noeuds;noeud1;noeud2;....noeud_final;
voici mon code
a la place du foreach j'aurais aimé utilser qqchose comme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 my $sth_ins = $dbh->prepare_cached($INSERT_ROUTE); my $field; my $i; my @input_values; while(<INFILE>){ $i = 0; @input_values = ('','','','','','','',''); foreach $field (split(';',$_)) { @input_values[$i] = chomp $field; $i++; } print "hello"; my $rv = $sth_ins->execute(@input_values) ? "ok" : "OOPS! - ".DBI->errstr; }
@input_values (split(';',$_))
mais le tableau est automaitquement redimmensionné, ce qui pose un problème pour l'insertion dans la table, puisque ce tableau doit contenir obligatoirement 8 cases.
L'utilisation du $i est lourde aussi.
Merci d'avance pour vos suggestions
Partager