7. Accès à une base de
données
Un serveur d'application vous permet de travailler avec des
ressources côté serveur telles que les bases de données.
Une page dynamique peut, par exemple, ordonner au serveur d'application
d'extraire des données de la base de données (à l'aide
d'une requête) et de les insérer dans le code HTML de la page
(l'instruction d'extraction des données de la base est nommée
requête).
Après implémentation de la base de
données, le schéma physique de notre base de donnée se
présente de la manière suivante :
- 103 -
Section 1 : Implémentation de la base de
données
Ayant opté pour le SGBD MySQL, celui fonctionne sous le
serveur Apache. Pour créer la base de données sous
celui-là, une procédure s'impose et de façon simpliste,
elle se présente de la manière suivante :
? Lancer le serveur Apache en démarrant WampServer ;
? Lancer le service « phpMyadmin » ;
? Dans l'onglet base de données en vue de créer
ladite base de données en saisissant son nom « bdgescom » et
cliquer sur Créer ;
? Enfin, créer les différentes tables y
afférentes en définissant pour chacune d'elles la structure
appropriée.
- 104 -
CREATE TABLE IF NOT EXISTS `agent` ( `IdMatriagent` varchar(10)
NOT NULL, `PrenAgent` varchar(15) NOT NULL, `NomAgent` varchar(15) NOT NULL,
`emailAgent` varchar(20) NOT NULL, `AdresseAgent` varchar(30) NOT NULL,
`telagent` varchar(15) NOT NULL, `motdepasseagent` varchar(20) NOT NULL,
`Idfonction` varchar(5) NOT NULL, PRIMARY KEY
ÇIdMatriagent`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `appartement` ( `Idappartement` int(5)
NOT NULL AUTO_INCREMENT, `libappartement` varchar(15) NOT NULL,
`prixlocappartement` float NOT NULL, `Idcategories` varchar(5) NOT NULL,
`Idimmeuble` int(5) NOT NULL,
PRIMARY KEY ÇIdappartement`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `categories` ( `IdCategories`
varchar(5) NOT NULL, `Libcategories` varchar(15) NOT NULL, PRIMARY KEY
ÇIdCategories`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `client` (
`Idnumclient` int(5) NOT NULL AUTO_INCREMENT,
`PrenClient` varchar(15) NOT NULL,
`Nomclient` varchar(15) NOT NULL,
`emailClient` varchar(20) NOT NULL,
`telclient` varchar(15) NOT NULL,
`MotdepasseClient` varchar(20) NOT NULL,
`Adresseclient` varchar(30) NOT NULL,
PRIMARY KEY ÇIdnumclient`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `conduire` ( `IdMatriagent`
varchar(10) NOT NULL, `IdImmatveh` varchar(10) NOT NULL, `dteConduire` date NOT
NULL,
` etat_veh` varchar(15) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- 105 -
CREATE TABLE IF NOT EXISTS `contrat` (
`Idcontrat` int(5) NOT NULL AUTO_INCREMENT,
`motif` varchar(20) NOT NULL,
`dtecontrat` date NOT NULL,
`typecontrat` varchar(15) NOT NULL,
`idnumclient` int(5) NOT NULL,
PRIMARY KEY ÇIdcontrat`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `entretenir` (
`IdMatriagent` varchar(10) NOT NULL, `Idappartement` int(5) NOT NULL,
`dteentretien` date NOT NULL,
`observationapp` varchar(30) NOT NULL ) ENGINE=InnoDB DEFAULT
CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `facture` (
`Idnumfacture` int(5) NOT NULL AUTO_INCREMENT,
`dtefacture` date NOT NULL,
`montantfacture` float NOT NULL,
`Idcontrat` int(5) NOT NULL,
PRIMARY KEY ÇIdnumfacture`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `fonction` (
`IdFonction` varchar(5) NOT NULL, `Libfonction` varchar(15) NOT NULL,
PRIMARY KEY ÇIdFonction`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `immeuble` (
`Idimmeuble` int(5) NOT NULL AUTO_INCREMENT,
`libimmeuble` varchar(15) NOT NULL,
`Adresseimmeuble` varchar(30) NOT NULL,
PRIMARY KEY ÇIdimmeuble`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `locationappartement`
(
`Idappartement` int(5) NOT NULL,
`Idnumclient` int(5) NOT NULL,
`dtelocapp` date NOT NULL,
`montantlocapp` float NOT NULL,
`dtefinloc` date NOT NULL
- 106 -
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `locationvehicule` ( `Idnumclient`
int(5) NOT NULL, `IdImmatVehicule` varchar(10) NOT NULL,
`dtelocveh` date NOT NULL,
`montantlocveh` float NOT NULL, `Dtefinlocveh` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `paiement` ( `Idnumclient` int(5)
NOT NULL,
`idnumfacture` int(5) NOT NULL,
`montantpaye` float NOT NULL,
`dtepaiement` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `type` (
`IdType` int(5) NOT NULL AUTO_INCREMENT,
`LibType` varchar(15) NOT NULL,
PRIMARY KEY ÇIdType`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `vehicule` ( `IdImmatVehicule`
varchar(10) NOT NULL, `MarqueVehicule` varchar(15) NOT NULL, `PrixlocVehicule`
float NOT NULL, `IdType` int(5) NOT NULL,
PRIMARY KEY ÇIdImmatVehicule`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- 107 -
Le schéma physique de base de données
«bdgescom» présenté ci-haut
ne peut rien faire en elle-même ; raison pour laquelle, nous avons
implémenté en PHP un logiciel qui sera mise à la
disposition des utilisateurs en vue d'exploiter les ressources qu'elle
conserve.
|