Pas évident de distinguer les différences entre ces trois bases de données, le site "Database journal" nous propose un article en deux parties en abordant d'abord les fonctionnalités importantes d'un SGBD.
Les procédures stockées :Les procédures stockées permettent de lire, manipuler et mettre à jour des données en une seule étape. A noter que ces portions de code stockées dans la base de données ne sont pas toujours portables et compatibles avec les autres types de bases. Les trois SGBD supportent les procédures stockées, Oracle supporte également les packages ou des collections de procédures stockées
Views :
Là aussi, les vues sont supportées par nos trois bases de données, la différence pourra se faire sur des requêtes complexes (à voir dans la deuxième partie)
Materialized Views (snapshots) :
Le snapshot, supporté par Oracle, est un objet contenant le résultat d'une requête SQL sur des tables (en lecture seule). MySQL et Postgresql ne les supportent pas par défaut.
Intégration des langages de développement :
La plupart des applications sont compatibles avec de nombreuses bases de données ainsi, les trois SGBD sont supportés par la majorité des langages orientés web : Java, PHP, Perl, Python, C#/.NET
Triggers :
Les trois SGBD intègrent les triggers, mais là aussi ces derniers peuvent poser quelques problèmes de portabilité ou de dispersion de code métier.
Sécurité :
Les trois bases de données peuvent comporter des vulnérabilités, où d’ailleurs, ils sortent régulièrement des mises à jour de sécurité. Cependant, avec la communauté open-source, les failles de sécurité peuvent être plus facilement détectés et ainsi être plus réactif sachant que le coût est bien moindre que sur une solution propriétaire.
Conclusion
Oracle, MySQL et PostgreSQL fournissent les mêmes fonctionnalités, la différence se fera sur les performances et la configuration. C’est dans la deuxième partie de l’article que nous verrons quelques distinctions.
Retrouver l'article complet : Database journal