En supposant que vous ne vouliez pas que toutes les colonnes soient renvoyées avec select * from ...
, vous pouvez simplement lister explicitement les colonnes souhaitées :
select fname, lname from ...
Par exemple, supposons que vous sachiez que votre ID utilisateur est jbug01 et que vous vouliez simplement l'adresse e-mail correspondante :
select email
from users
where userid = 'jbug01'
Pour ce faire dans PHP, l'extrait de code suivant peut vous aider :
<?php
$conn = mysql_connect ("localhost", "paxdiablo", "supersekritsauce");
if (!$conn) {
die ('Could not connect: ' . mysql_error());
}
mysql_select_db ("my_database", $conn);
$result = mysql_query ("select email from users where userid = 'jbug01'");
while ($row = mysql_fetch_array ($result)) {
echo $row['email'] . "<br />";
}
mysql_close ($conn);
?>
Il y en a peu précieux cas où la sélection de *
logique (autre que les outils qui nécessitent pour obtenir toutes les colonnes telles que les visionneuses de base de données).
Vous devriez généralement préférer être explicite avec vos sélections de colonnes. Cela peut vous permettre de détecter les problèmes liés aux modifications de schéma beaucoup plus tôt dans le processus que ce ne sera le cas si vous sélectionnez tout aveuglément.
Cela entraînera également moins d'informations transmises, ce qui peut ne pas être important pour les petites bases de données ou les systèmes où tout fonctionne sur la même boîte, mais cela le fera affecter l'évolutivité de votre système, à la fois en termes de taille des données et de distribution sur un réseau.