Par rapport à ses concurrents que sont
Oracle,
MySQL ou
PostgreSQL, SQL Server se distingue par le fait que c'est un SGBDR
(Système de Gestion de Bases de Données Relationnelles) originellement multibase et multi
schéma. Il est possible de faire des requêtes nativement interbases. Par exemple la requête suivante lie deux tables de deux bases de données différentes :
SELECT *
FROM BASE_A.dbo.TABLE1 AS T1
INNER JOIN BASE_B.dbo.TABLE2 AS T2
ON T1.ID = T2.ID;
L'optimiseur étant capable de faire un plan de requête parfaitement optimisé même si la requête consulte des données de plusieurs bases...
Bien que PostGreSQL soit multibase et multischéma, cette possibilité d'interrogation simultanée n'est pas native et il faut passer par le truchement de "dblink" qui interdit les jointures et donc toute possibilité d'optimisation... Oracle avec sa version 12 tente d'intégrer ce même concept de multibase (appelé
multi-tenant) mais souffre du même problème que PostGreSQL. MySQL est mono schéma, multibase.
Partager