Connaître les colonnes d'une table avec une requête sql

Il arrive souvent des situations où nous sommes dans l'incapacité d'avoir accès à PhpMyAdmin pour connaître les colonnes d'une table sur laquelle on souhaite travailler par exemple. Avec une requête SQL, il est possible d'avoir cela.

Connectons-nous à notre base : [+ détails]

<?php 
// connexion à la base de données
$bd = new PDO('mysql:host=localhost;dbname=nom_base', 'utilisateur', 'mot_de_passe');
?>

Essayez l'une des deux requêtes suivantes. Vous aurez le même résultat de toute façon :

<?php
$resultats = $db->query('DESCRIBE nom_table');
?>

ou

<?php
$resultats = $db->query('SHOW COLUMNS FROM nom_table');
?>

Pour voir le résultat, il suffit de faire :

<?php 
print_r($resultats);
?>

Il est vrai que le résultat présenté ainsi est vraiment difficile à lire. On va alors le parcourir :

<?php 
while($colonnes = $resultats->fetchAll()){
   foreach ($colonnes as $key => $value) {
      echo 'Champ : '.$value['Field'].' | Type '.$value['Type'].'<br />';
   }
}
?>

Le while nous permet de parcourir chaque ligne du résultat de la requête. Chaque ligne nous retourne un tableau indexé que nous allons parcourir également avec foreach en retournant dans la valeur (qui est un tableau) de l'index le nom de la colonne (Field) et son type (Type).

Partager :
comments powered by Disqus

Suivez-moi sur Twitter

Copyright © 2010-2019 Lookman Design, tous droits réservés .