Bien que "SELECT *" puisse souvent être découragé dans le code de production, il existe en effet des cas où cela peut être justifiable.
Déclencheurs d'audit
Les déclencheurs d'audit peuvent bénéficier de l'utilisation de « SELECT ". Lorsque des colonnes supplémentaires sont ajoutées à la table de base, l'utilisation de « SELECT » garantit qu'une erreur est générée, empêchant ainsi l'omission du déclencheur d'audit et de la structure de la table.
Tables dérivées
"SELECT " peut être utile dans les tables dérivées et les expressions de tables à colonnes. En utilisant "", toutes les colonnes sont incluses, garantissant que si de nouvelles colonnes sont ajoutées à la table de base, elles seront automatiquement incluses dans la table dérivée ou CTE.
Optimisation SQL Server
Dans SQL Server, l'optimiseur reconnaît que seules des colonnes spécifiques sont nécessaires dans une requête, même si "SELECT *" est utilisé dans une expression de table. Par conséquent, il n'y a pas de surcharge supplémentaire pour récupérer et supprimer les colonnes inutiles.
Vues (avec prudence)
En principe, "SELECT " peut être acceptable dans vues, car il s’agit du SELECT final de la vue où il doit être évité. Toutefois, la prudence est de mise dans SQL Server, car les métadonnées des colonnes des vues ne sont pas automatiquement mises à jour lorsque la table sous-jacente change. L'utilisation de "" peut conduire à des résultats incorrects à moins que la vue ne soit actualisée à l'aide de sp_refreshview.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!