Page 1 PHP Organigramme de gestion de base de données 1 2 3 4

publicité
Page 1
PHP
Organigramme de gestion de base de données
1
Connexion au serveur de base de données
2
3
4
5
Ouverture d'une
base de données
Création d'une
base de données
Suppression d'une
base de données
Affichage de la liste
des bases de données
6
7
8
9
10
Requête pour afficher,
ajouter, supprimer,
modifier le contenu
d'une ou plusieurs
tables de la base de
données choisie
Requête de
Création d'une
nouvelle table
dans la base de
données choisie
Requête de
Suppression d'une
table de la base de
données choisie
Requête de
modification de la
structure d'une table
de la base de
données choisie
Affichage de
la liste des
tables de la
base de
données
choisie
Exécution de la requête
11
12
Affichage du nombre
d'enregistrements
concerné par la
requête
13
Affichage du nombre
de rubriques (champs)
concerné par la
requête
14
Affichage du nom des
rubriques (champs)
concerné par la
requête
15
Affichage de la valeur
de la rubriques
(champs) concernée
par la requête
16
Affichage de la taille
d'une rubrique en
particulier
17
Affichage du type
d'une rubrique en
particulier
Type=caractère,
numérique, date etc…
18
Fermeture de la base
de données après
utilisation
Page 2
PHP
Gestion de base de données
Code php
num
$db=mysql_connect("localhost","httpd","");
1
$db est la variable ne votre choix
2
3
4
5
6.1
6.2
6.3
6.4
7
8
9
10
11
Mysql_select("nom de la bd",$db);
Mysql_create_db("nom de la bd à créer",$db)
Mysql_drop_db("nom de la bd à supprimer",$db)
$nb=mysql_list_dbs($db);
while ($base=mysql_fetch_row($nb))
{
echo "base de données : $base[0] <br>";
}
$nb est la variable de votre choix
$r1="select rubrique,rubrique2 from table where
condition";
condition = rubrique signe(=, <>, <, >) contenu
$r1 est la variable ne votre choix
$r1="delete from table where condition";
Exemple de condition
Prix<=200 ou DateInscription>#01/01/2000#
Commentaires
Connexion au serveur de base de données
Se connecter au serveur Mysql à partir de
MySqlManager.exe en local
Ouverture d'une base de données (bd)
Création d'une nouvelle base de données
Suppression d'une base de données existante
Affichage de la liste des bases de données
mysql_list_dbs contient la liste des
bases de données
mysql_fetch_row permettra de les afficher
Requête de sélection
Exemple
Select nom from client where ville='nice'
Pour sélectionner les clients niçois
Requête de suppression
Exemple
delete from client where achat<>'télé'
pour supprimer les clients n'ayant pas acheté
une télé
$r1="insert into table (rubrique1,rubrique2) values
Requête d'ajout
(contenu rubrique1,contenu rubrique2) where
Exemple
condition";
Insert into client (nom,age) values
('Dupond',40)
Pour ajouter monsieur Dupond de 40 ans
$r1="update table set rubrique1=contenu1,
Requête de mise à jour
rubrique2=contenu2 where condition";
Exemple
Update client set age=age+1 where
nom='dupond'
Pour ajouter 1à l'age de Dupond
$r1="create table nom de la table (rubrique1 type (taille) Requête création d'une nouvelle table
option, rubrique2 type (taille) option…)";
Exemple
type: char pour caractère, int pour entier
Create table client (nom char(15) not null,
float pour décimal, datetime pour date et heure
age int(2))
Option : null ou not null ou auto_increment ou primary Pour ajouter la table client contenant les
key (rubrique1,rubrique2)
rubriques nom de type chaîne et age entier
$r1="drop table nom de la table à supprimer";
Requête suppression d'une table
Exemple
drop table client
Pour supprimer la totalité de la table client
$r1="alter table nom de la table caractéristique";
Requête modification structure de la table
caractéristique=add (rubrique type (taille)) pour ajouter Exemple
une rubrique à la table
Alter table client add (datenais date)
ou drop rubrique pour supprimer une rubrique de la
Pour ajouter la rubrique datenais de type
table ou modify rubrique type taille option
Date à la table client , la taille n'est pas
Exemple alter table achat modify prix float(5,2) not null indiquée pour les rubriques de type Date
$nb=mysql_list_tables("nom de la bd",$db);
Boucle d'affichage de la liste des tables
while ($table=mysql_fetch_row($nb))
d'une base de données
{
mysql_list_tables contient la liste des tables
echo "liste des tables : $table[0] <br>";
mysql_fetch_row permet de l'afficher
}
$table est la variable de votre choix
$rexe=mysql_query($r1,$db);
Permet d'exécuter la requête
$rexe est la variable de votre choix
Exemple:
$r1="delete from client where nom like'a%'"
$r1 est la variable contenant le texte de la requête
mysql_query($r1,$db) supprime les clients dont
le nom commence par un A
Page 3
PHP
Gestion de base de données
Code php
num
$Nenr=mysql_affected_rows($db);
12
Commentaires
Affichage du nombre d'enregistrements
concerné par la dernière requête
13
Affichage du nombre de rubriques (champs)
concerné par la requête
Affichage du nom des rubriques (champs)
concerné par la requête
14
15
16
17
18
E
X
E
M
P
L
E
ou $Nenr=mysql_num_rows($rexe);
$Nenr table est la variable de votre choix
$nbrub=mysql_num_fields($rexe);
$nom=mysql_field_name($rexe,$index);
$index est l'indice de la rubrique. L'indice de la 1ere
rubrique est 0, celui de la 2ème rubrique est 1….
Exemple
$r="select * from achats";
$Rsql=mysql_query($r,$db);
$Nrub=mysql_num_fields($Rsql);
for ($index=0;$index<$Nrub;$index++)
Sélection de toutes les rubriques et de tous
les enregistrements de la table Achats
$Nrub contient le nombre total de rubrique
Boucle d'affichage du nom des rubriques
A partir de mysql_field_name
{echo mysql_field_name($Rsql,$index);}
$r="select * from achats";
Boucle d'affichage du contenu des rubriques
$Rsql=mysql_query($r,$db);
de la table Achats
while ($rub=mysql_fetch_row($Rsql))
$rub[0] est le contenu de la 1ere rubrique
{
echo "$rub[0] <br> $rub[1]";}
$rub[1] est le contenu de la seconde etc…
$taille=mysql_field_len($rexe,$index);
Affichage de la taille d'une rubrique en
particulier voir Exemple N° 14
taille indiquée lors de la création de la structure de la
En remplaçant mysql_field_name
table
Par mysql_field_len
$typ=mysql_field_type($rexe,$index);
Affichage du type d'une rubrique
type indiqué lors de la création de la structure de la table Le résultat obtenu est string pour du texte
type = datetime pour une rubrique de type Date
Real pour un décimal, int pour un entier
Mysql_close($db);
Fermeture de la base de données
<html><body bgcolor=pink>
<? $db=mysql_connect("localhost","httpd","");
mysql_select_db("produit",$db);
//connexion au serveur
//selection de la base de données produit
$r="select * from achats";
$Rsql=mysql_query($r,$db);
//selection de tous les champs
et execution de la requete
$Nenr=mysql_num_rows($Rsql);
echo "nombre : <b>$Nenr</b> <p>";
//affichage du nombre d'enregistrement
$Nrub=mysql_num_fields($Rsql);
echo "<h1> nombre rubrique : $Nrub</h1>";
print("<table border=1>\n");print("<tr bgcolor=white>\n");
for ($index=0;$index<$Nrub;$index++){
$v1=mysql_field_name($Rsql,$index);
print("<td><b>   $v1   </b></td>\n");}
print("</tr>\n");
while ($rub=mysql_fetch_row($Rsql)){
print("<tr>\n");
for ($index=0;$index<$Nrub;$index++){
$lg=strLen($rub[$index]);$aff=" ";
$tp=mysql_field_type($Rsql,$index);
$alg="div align=left";
if ($tp!="string") $alg="div align=right";
if ($lg!=0)
$aff=$rub[$index];
print("<td $alg><b>$tp</b></td>\n");}
print("</tr>\n");
}
print("</table>\n");
//affichage du nombre de rubriques concerné
// affichage du contenu dans un tableau
Boucle d'affichage du nom des rubriques
Boucle d'affichage du contenu
Test de la longueur du champ, si égale à 0
Alors on affiche   c'est à dire un espace
Test du type de la rubrique
Si n'est pas de type string (texte) alors on aligne
Sur la droite dans la case du tableau
Mysql_close($db);
?></body></html>
Sauvegarder le contenu de la table dans un fichier :Select * from nom_table into outfile "nom_fichier.txt"
Récupérer le contenu d'un fichier pour le mettre dans la table:Load data infile "nom_fichier.txt" into table nom_table
Téléchargement