WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Gestion d'informations. Mutation vers les bases de données relationnelles et le langage SQL.


par Jacques MUDUMBI
Université de Yaoundé 1 - Master 2017
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Chapitre IV: Le langage Sql : un manipulateur de bases de données relationnelles

IV.1. Introduction

Nombre d'études ayant trait au langage SQL (Structured Query Language) soutiennent que ce langage d'interrogation des données est par la plupart supporté par des produits commerciaux que ce soit par les systèmes de gestion de bases de données micro tel que Access ou par les produits plus professionnels tels que Oracle. Il s'ensuit que ce langage a fait l'objet de plusieurs normes ANSI/ISO avec une remontée de la norme SQL2 qui a été définie en 1992. Cependant, il est considéré comme le langage d'accès normalisé aux bases de données.

A ce stade de la réflexion, son succès est dû essentiellement à sa simplicité et au fait qu'il s'appuie sur le schéma conceptuel pour énoncer des requêtes en laissant le SGBD responsable de la stratégie d'exécution. Or, dire cela revient à expliquer que le langage SQL propose un langage de requêtes ensembliste et assertionnel. Car, par suite, il ne possède pas la puissance d'un langage de programmation : entrées/sorties, instructions conditionnelles, boucles et affectations.

Pour mieux saisir, avec certains traitements, il est donc nécessaire de coupler le langage SQL avec un langage de programmation plus complet. De ce fait, il apparaît donc légitime de dire que SQL est un langage relationnel, il manipule donc des tables (i.e. des relations, c'est-à-dire des ensembles) par l'intermédiaire de requêtes qui produisent également des tables. Par ailleurs, s'il faut considérer les jalons de son trajectoire, d'un côté disons que les différents produits phares ont évolué, entre autre la norme SQL est passée à SQL-2, puis SQL-3. Ainsi voit-on des files d'évolutions d'attentes en continu, SQL est désormais un langage incontournable pour tout SGBD moderne.

Dans les faits, la réalité est plus complexe, bien qu'une norme existe, on assiste à une prolifération de dialectes propres à chaque produit : soit des sous-ensembles de la norme (certaines fonctionnalités n'étant pas implantées), soit des sur-ensembles (ajout de certaines fonctionnalités, propres à chaque produit). Du reste, Oracle et Informix dominent le marché actuel, SQL-Server (de Microsoft) tente de s'imposer dans le monde des PC sous NT. Avec ce lissage d'autres produits très chers, on voit exister heureusement des systèmes libres et gratuits : MySQL et PostgreSQL qui au final sont les plus connus.

66

De l'autre côté, bien que ces SGBDR n'aient pas la puissance des produits commerciaux, certains s'en approchent de plus en plus. Cela dit, les différences notables concernent principalement les environnements de développement qui sont de véritables ateliers logiciels sous Oracle et qui sont réduits à des interfaces de programmation C, Python, Perl sous PostgreSQL. De même, pour les interfaces utilisateurs : il en existe pour PostgreSQL, mais ils n'ont certainement pas la puissance de leurs équivalents commerciaux.

Pour notre cas, nous ne présenterons ici que les fonctionnalités principales de SQL. Il est ici probant que les langages utilisés dans les bases de données relationnelles se fondent sur l'algèbre relationnelle et/ou le calcul relationnel. Une fois de plus, ce dernier, est basé sur la logique des prédicats (expressions d'une condition de sélection définie par l'utilisateur). On distinguer 3 grandes classes de langages :

Les langages algébriques, basés sur l'algèbre relationnelle de CODD, dans lesquels les requêtes sont exprimées comme l'application des opérateurs relationnels sur des relations. Le langage SQL, standard pour l'interrogation des bases de données, fait partie de cette catégorie.

Les langages basés sur le calcul relationnel de tuples, construits à partir à partir de la logique des prédicats, et dans lesquels les variables manipulées sont des tuples (ex. : QUEL, QUEry Language).

Les langages basés sur le calcul relationnel de domaines, également construit à partir de la logique des prédicats, mais en faisant varier les variables sur les domaines des relations.

Toutefois, le langage SQL, est un langage normalisé permettant :

La définition des éléments d'une base de données (tables, colonnes, clefs, index, contraintes, ...),

La manipulation des données (insertion, suppression, modification, extraction, . . .), Le contrôle des données (acquisition et révocation des droits),

L'interrogation de la base (clause SELECT)

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Tu supportes des injustices; Consoles-toi, le vrai malheur est d'en faire"   Démocrite