Perl et Mysql

Fermé
flongo Messages postés 53 Date d'inscription jeudi 2 avril 2009 Statut Membre Dernière intervention 9 décembre 2009 - 14 avril 2009 à 15:27
Bonjour,

J'ai le probleme suivant:

Je veux mettre des données récupérées dans une base de données. Pour cela j'utilise PERL et MYSQL.

J'ai commencé le programme suivant:

#!/usr/bin/perl

# Fichier Reception
#print "Insertion des donnees dans la table reception\n";
open (FICHIER, "<P:\\Resul\\reception.txt") or die("Impossible de lire le fichier! \n");
print $ligne;
chomp $ligne;
my $ligne=<FICHIER>;



#Connexion à la base de données transfusion.

use warnings;
use strict;

use DBI; # Charger le module DBI

# Parametres de connexion à la base de données
my $BaseDeDonnees = "transfusion";
my $NomHote = "localhost"; # Il est possible de mettre une adresse IP
my $login = "fngoala"; # login
my $MotDePass = ""; # Nous n'avons pas de mot de pass

# Connection à la base de données mysql
my $dbh = DBI->connect( "dbi:mysql:dbname=$BaseDeDonnees;host=$NomHote;",
$login, $MotDePass )
or die "Connection impossible à la base de donnees $BaseDeDonnees !";


print "Creation de la table Reception\n";
my $SQLCreationTablesReception = <<"SQL";
CREATE TABLE Reception (
num_mess INT NOT NULL ,
num_recep INT NOT NULL ,
date_livr VARCHAR( 20 ) NOT NULL ,
civ VARCHAR( 5 ) NOT NULL ,
nom VARCHAR( 250 ) NOT NULL ,
nom_mari VARCHAR( 250 ) NOT NULL ,
prenom VARCHAR( 250 ) NOT NULL ,
date_nais VARCHAR( 20 ) NOT NULL ,
type_pro INT NOT NULL ,
ref_pro INT NOT NULL ,
num_edital INT NOT NULL ,
sexe VARCHAR( 1 ) NOT NULL ,
nom_edit VARCHAR( 250 ) NOT NULL ,
nom_mari_edit VARCHAR( 250 ) NOT NULL ,
prenom_edit VARCHAR( 250 ) NOT NULL ,
date_nais_edit VARCHAR( 20 ) NOT NULL ,
num_comm INT NOT NULL ,
num_livrai INT NOT NULL ,
PRIMARY KEY ( num_mess )
) COMMENT = 'Les réceptions';
SQL


$dbh->do($SQLCreationTablesReception)
or die "Impossible de creer la table Reception\n\n";

# Lecture des fichiers

while (my $ligne){

my $NUMMESS=split( /-/, $ligne );
}

close (FICHIER);

Moi mon fichier de départ est un txt avec pour split /\s-\s /.
J'ai le message d'erreur suivant:

Use of implicit split to @_ is deprecated at P:\Prog_perl\BASE1.pl line 64.

La ligne 64 correspond à la ligne de code suivante :

[QUOTE]
while (my $ligne){

my $NUMMESS=split( /-/, $ligne );
/QUOTE

Je ne comprend pas trop ce message d'erreur.
Quelqu'un pourrait il m'aider?

Merci d'avance.