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 V: Le Sql intégré : un paquetage de Sql Embarqué

V.1. Introduction

Cet aparté étant terminé, revenons à présent sur le SQL intégré. Rappelons que SQL intégré permet d'utiliser SQL dans un langage de troisième génération (C, Java, Cobol, etc.) avec un(e) :

déclaration d'objets ou d'instructions ; exécution d'instructions ;

gestion des variables et des curseurs ; traitement des erreurs.

Bien qu'essentielle, les sections de ce chapitre décrit le pacquage SQL embarqué pour PostgreSQL ECPG. Il est compatible avec les langages C et C++ et a été développé par Linus Tolke et Michael Meskes.

En approfondissant cette idée, un programme SQL embarqué est en fait un programme ordinaire, dans notre cas un programme en langage C, dans lequel nous insérons des commandes SQL incluses dans des sections spécialement marquées. La description des instructions Embedded SQL commencent par les mots EXEC SQL et se terminent par un point-virgule (« ; »). Pour générer l'exécutable, le code source est d'abord traduit par le préprocesseur SQL qui convertit les sections SQL en code source C ou C++, après quoi il peut être compilé de manière classique.

Nous pouvons noter que le SQL embarqué présente des avantages par rapport à d'autres méthodes pour prendre en compte des commandes SQL dans du code C. comme par exemple, le passage des informations de et vers les variables du programme C est entièrement pris en charge. Ensuite, le code SQL du programme est vérifié syntaxiquement au moment de la précompilation. Enfin, le SQL embarqué en C est spécifié dans le standard SQL et supporté par de nombreux systèmes de bases de données SQL. L'implémentation PostgreSQL est conçue pour correspondre à ce standard autant que possible, afin de rendre le code facilement portable vers des SGBD autre que PostgreSQL.

Comme situation alternative au SQL intégré, on peut citer l'utilisation d'une API (Application Programming Interface) permettant au programme de communiquer directement avec le SGBD via des fonctions fournies par l'API. Dans ce cas de figure, il n'y a pas de précompilation à effectuer [32].

86

V.2. Connexion au serveur de bases de données

Il en est de même pour le langage utilisé (C, Java, PHP, etc.), pour pouvoir effectuer un traitement sur une base de données, il faut respecter les étapes suivantes :

1. établir une connexion avec la base de données ;

2. récupérer les informations relatives à la connexion ;

3. effectuer les traitements désirés (requêtes ou autres commandes SQL) ;

4. fermer la connexion avec la base de données.

Mais ce qui va nous intéresser tout particulièrement ici, c'est comment ouvrir et fermer une connexion, et nous verrons dans les sections suivantes comment effectuer des traitements.

A. Ouverture de connexion

La connexion à une base de données se fait en utilisant l'instruction suivante :

La cible peut être spécifiée de l'une des façons suivantes :

- nom_base[@nom_hôte ][:port] ;

- tcp:postgresql://nom_hôte [:port ] [/nom_base][? options] ;

- unix:postgresql://nom_hôte[: port][/nom_base ][? options] ;

- une chaîne SQL littérale contenant une des formes ci-dessus ;

- une référence à une variable contenant une des formes ci-dessus ;

- DEFAULT.

D'une manière réelle, utiliser une chaîne littérale (entre guillemets simples) ou une variable

de référence génère moins d'erreurs. La cible de connexion DEFAULT initie une connexion

sur la base de données par défaut avec l'utilisateur par défaut. Aucun nom d'utilisateur ou

nom de connexion ne pourrait être spécifié isolément dans ce cas.

Il existe également différentes façons de préciser l'utilisateur utilisateur :

- nom_utilisateur

- nom_utilisateur/ mot_de_passe

- nom_utilisateur IDENTIFIED BY mot_de_passe

- nom_utilisateur USING mot_de_passe

nom_utilisateur et mot_de_passe peuvent être un identificateur SQL, une chaîne SQL

littérale ou une référence à une variable de type caractère.

nom_connexion est utilisé pour gérer plusieurs connexions dans un même programme.

Il peut être omis si un programme n'utilise qu'une seule connexion. La dernière connexion

87

ouverte devient la connexion courante, utilisée par défaut lorsqu'une instruction SQL est à exécuter.

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








"Soit réservé sans ostentation pour éviter de t'attirer l'incompréhension haineuse des ignorants"   Pythagore