
Les requêtes SQL permettent de faire presque tout sur une base de données. Que ce soit sur Microsoft SQL Server, Oracle Database, PostgreSQL, MariaDB, MySQL et bien d’autres, les requêtes permettent toujours d’arriver à ses fins mais il faut cependant connaitre les syntaxes, les variables, définir l’ordre des instructions… Même pour afficher un résultat aussi simple que de compte le nombre de tables dans une base de données SQL Server.
Pour calculer le nombre de tables dans une base de données Microsoft SQL Server, il faut interroger les vues du catalogue système. comme ceci.
SELECT COUNT(*) AS NombreDeTables FROM sys.tables WHERE is_ms_shipped = 0;
Explications sur cette requête
sys.tablesest une vue de catalogue qui contient une ligne pour chaque table dans la base de donnéesCOUNT(*)est la fonction d’agrégation qui compte le nombre de lignes (donc le nombre de tables)is_ms_shipped = 0:is_ms_shippedest une colonne booléenne (0 ou 1) dans les vues de catalogue.- La valeur
0signifie que la table est une table créée par l’utilisateur (non une table système fournie par Microsoft). Cela garantit que le compte se fait uniquement sur les tables de votre application et ne comprend pas les tables internes de SQL Server
AS NombreDeTablesdonne un nom clair à la colonne de résultat
Cette requête ne sera pas utile tous les jours mais elle servira néanmoins à vérifier l’intégrité d’une base, comparer deux BDD ou encore confirmer qu’un import se soit bien déroulé.





