| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 
 |  
#!/usr/bin/perl -w
 
use warnings; 
use strict; 
use diagnostics;
use DBI;                    # Charger le module DBI 
use vars qw/ $VERSION /;    # Version du script 
$VERSION = '1.0'; 
 
# Paramètres de connexion à la base de données 
my $bd          = 'mybd; 
my $serveur     = 'serv1';    # Il est possible de mettre une adresse IP 
my $identifiant = 'bdd1';         # Identifiant 
my $motdepasse  = 'bdd1pass';        # Nous n'avons pas de mot de passe 
 
# Connexion à la base de données MySQL 
my $dbh = DBI->connect("dbi:mysql:dbname=$bd;host=$serveur;", $identifiant, $motdepasse ) 
or die "Connexion impossible a la base de donnees $bd !"; 
 
# Création des tables 
print "Creation de la table UltraSonTHERM\n"; 
 
my $sql_creation_table_regions = <<"SQL";
CREATE TABLE UltraSonTHERM( 
	id_ultrason INT UNSIGNED NOT NULL AUTO_INCREMENT,
	date DATETIME NOT NULL,
	ultrasoundID TINYINT,
	value SMALLINT UNSIGNED,
	PRIMARY KEY (id_ultrason)
)COMMENT ='Capteurs ultra son pour maxity thermique';
SQL
 
$dbh->do('DROP TABLE IF EXISTS UltraSonTHERM;') or die "Impossible de supprimer la table UltraSonTHERM\n\n";
$dbh->do($sql_creation_table_regions) or die "Impossible de créer la table UltraSonTHERM\n\n";
 
# Lecture des fichiers et insertion des données 
my $fichier_ultrason      = 'bigfileUltrason_THERM.txt'; 
#print "$fichier_ultrason \n";
 
# Fichier UltraSonTHERM 
print "Insertion des donnees dans la table UltraSonTHERM\n"; 
open my $fh_ultrason,'<', $fichier_ultrason or die "Impossible de lire le fichier $fichier_ultrason\n"; 
#open(my $fh_ultrason, "<bigfileUltrason_THERM.txt") or die "Impossible de lire le fichier $fichier_ultrason\n"; 
my $entete_fichier_region = <$fh_ultrason>; 
 
# Insertion des données 
my $requete_sql_region = <<"SQL"; 
  INSERT INTO UltraSonTHERM (date,ultrasoundID,value) VALUES ( ?, ?, ?);
SQL
 
 
my $sth_regions = $dbh->prepare($requete_sql_region) or die $dbh->errstr; 
while ( my $ligne = <$fh_ultrason> ) { 
  chomp $ligne; 
  my ($Date,$UltrasoundID,$Value) = split /\t/, $ligne; 
  $sth_regions->execute($Date,$UltrasoundID,$Value) 
    or die "Echec Requête $requete_sql_region : $DBI::errstr"; 
} 
close $fh_ultrason; 
 
# Déconnexion de la base de données 
$dbh->disconnect(); | 
Partager