0% ont trouvé ce document utile (0 vote)
53 vues42 pages

Module Delphi Réseau

Le document présente les concepts fondamentaux de l'architecture client/serveur, ses avantages et inconvénients, ainsi que les différences avec d'autres architectures comme le peer-to-peer. Il aborde également l'installation et la configuration d'InterBase, un système de gestion de bases de données relationnelles, en détaillant les étapes nécessaires pour mettre en place un environnement client/serveur. Enfin, il souligne l'importance de la sécurité et de l'administration dans la gestion des réseaux.

Transféré par

nabilsamiha07
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
53 vues42 pages

Module Delphi Réseau

Le document présente les concepts fondamentaux de l'architecture client/serveur, ses avantages et inconvénients, ainsi que les différences avec d'autres architectures comme le peer-to-peer. Il aborde également l'installation et la configuration d'InterBase, un système de gestion de bases de données relationnelles, en détaillant les étapes nécessaires pour mettre en place un environnement client/serveur. Enfin, il souligne l'importance de la sécurité et de l'administration dans la gestion des réseaux.

Transféré par

nabilsamiha07
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

République Algérienne Démocratique et Populaire

Ministère De La Formation Et De L’enseignement Professionnels

Module
Programmer en réseau à l’aide d’un langage
orienté objet

Informatique : Option / Bases de Données

(2011)

Enseignante : Zouaoui.S
Chapitre I : Généralité sur l’Architecture Client/Serveur

Réseau : pour quoi faire ?


- Echanger et partager des informations
- Transferts de fichiers/données - Accès à des fichiers/données distants...
- Gérer et partager des ressources
- Imprimante partagée - Puissance de calcul - Stockage et sauvegarde...
- Communiquer
- Courrier électronique - Chat, conférence - Publication en ligne...
Réseau : c’est quoi ?
- Des machines et leurs programmes (= nœuds du réseau)
- Ordinateurs réseau (carte réseau + système exploitation réseau)
- Périphériques réseau (imprimante...)
- Matériel réseau spécialisé
- Des connexions entre les machines (= branches du réseau)
- par câble (fibre optique, ethernet, cuivre...)
- par radio (ondes hertziennes, infrarouge...)

Réseau local / Internet


Réseau local
Centré autour d’une organisation (université, entreprise, famille) géré par celle-ci
Internet = réseau des réseaux mondial
Ensemble de réseaux locaux reliés par des « backbones » (épines dorsales)

2
Sécurité des échanges réseau
Protection des données qui circulent (Cryptage des données)
Protection des données sur les machines ( Identification)
Protection des attaques ( Firewall , Antivirus )

1- Présentation de l’architecture client/serveur


De nombreuses applications fonctionnent selon un environnement client/serveur, cela signifie que des
machines clientes (des machines faisant partie du réseau) contactent un serveur, une machine
généralement très puissante en termes de capacités d'entrée-sortie, qui leur fournit des services. Ces
services sont des programmes fournissant des données telles que l'heure, des fichiers, une connexion, etc.

Les services sont exploités par des programmes, appelés programmes clients, s'exécutant sur les
machines clientes. On parle ainsi de client (client FTP, client de messagerie, etc.) lorsque l'on désigne un
programme tournant sur une machine cliente, capable de traiter des informations qu'il récupère auprès d'un
serveur (dans le cas du client FTP il s'agit de fichiers, tandis que pour le client de messagerie il s'agit de
courrier électronique).

2- Avantages de l'architecture client/serveur

Le modèle client/serveur est particulièrement recommandé pour des réseaux nécessitant un grand
niveau de fiabilité, ses principaux atouts sont :

 Des échanges entre programmes sur réseau de machines suivant les principes client / serveur
 Des machines serveur peu nombreuses.
 Des postes clients pour les différents utilisateurs.
 Des ressources centralisées : étant donné que le serveur est au centre du réseau, il peut gérer des
ressources communes à tous les utilisateurs, comme par exemple une base de données centralisée,
afin d'éviter les problèmes de redondance et de contradiction
 Une meilleure sécurité : car le nombre de points d'entrée permettant l'accès aux données est moins
important
 Une administration au niveau serveur : les clients ayant peu d'importance dans ce modèle, ils ont
moins besoin d'être administrés. les clients ne sont pas des ressources critiques.
 Un réseau évolutif : grâce à cette architecture il est possible de supprimer ou rajouter des clients
sans perturber le fonctionnement du réseau et sans modification majeure
3- Inconvénients du modèle client/serveur
L'architecture client/serveur a tout de même quelques lacunes parmi lesquelles :

3
 Un coût élevé dû à la technicité du serveur
 Un maillon faible : le serveur est le seul maillon faible du réseau client/serveur, étant donné que
tout le réseau est architecturé autour de lui ! Heureusement, le serveur a une grande tolérance aux
pannes.

4- Fonctionnement d'un système client/serveur

Un système client/serveur fonctionne selon le schéma suivant :

 Le client émet une requête vers le serveur grâce à son adresse IP et le port, qui désigne un service
particulier du serveur
 Le serveur reçoit la demande et répond à l'aide de l'adresse de la machine cliente et son port

Qu'est-ce qu'un serveur ?


• un « logiciel serveur » offre un service sur le réseau,
• le « serveur » est la machine sur laquelle s'exécute le logiciel serveur,
• le serveur doit être sur un site avec accès permanent et s'exécuter en permanence. Un site peut offrir
plusieurs services. Le serveur accepte des requêtes, les traite et envoie le résultat au demandeur.
Caractéristiques de serveur : Un programme serveur
- tourne en permanence, attendant des requêtes,
- peut répondre à plusieurs clients en même temps,
- Nécessité machine robuste et rapide, qui fonctionne 24h/24,
- grande mémoire,
- disques suffisants,
- sécurité des disques,
- etc.
- présence d’administrateurs réseau pour gérer les serveurs.
Service
- Comportement d’un programme qui peut rendre service à d’autres programmes
Exemple : service de traduction noms/adresses IP = service DNS
- Un service est appelé par une requête suivant un certain protocole
• Pour accéder à un service, il faut l'adresse du site et le numéro du port.
- Un service est fourni sur un Port de communication identifié par un numéro.
• Certains numéros de Port (internationalement définis) identifient le service quelque soit le site
Ex : - le service FTP est offert sur les ports numéros 21 (contrôle) et 20 (données),

4
- le service TELNET (émulation terminal) sur le port 23,
- le service SMTP (mail) sur le port 25,
Qu'est-ce qu'un client ?
 Un « logiciel client » utilise le service offert par un serveur,

 Le « client » est la machine sur laquelle s’exécute le logiciel client,

 Le client est raccordé par une liaison temporaire.

 Le client envoie des requêtes et reçoit des réponses.

Présentation de l'architecture à 2 niveaux

L'architecture à deux niveaux (aussi appelée architecture 2-tier, tier signifiant rangée en anglais)
caractérise les systèmes clients/serveurs pour lesquels le client demande une ressource et le serveur la lui
fournit directement, en utilisant ses propres ressources. Cela signifie que le serveur ne fait pas appel à une
autre application afin de fournir une partie du service.

Présentation de l'architecture à 3 niveaux

Dans l'architecture à 3 niveaux (appelée architecture 3-tier), il existe un niveau intermédiaire, c'est-à-dire
que l'on a généralement une architecture partagée entre :

1. Un client, c'est-à-dire l'ordinateur demandeur de ressources, équipée d'une interface utilisateur


(généralement un navigateur web) chargée de la présentation ;
2. Le serveur d'application (appelé également middleware), chargé de fournir la ressource mais
faisant appel à un autre serveur
3. Le serveur de données, fournissant au serveur d'application les données dont il a besoin.

5
Etant donné l'emploi massif du terme d'architecture à 3 niveaux, celui-ci peut parfois désigner aussi les
architectures suivantes :

 Partage d'application entre client, serveur intermédiaire, et serveur d'entreprise ;


 Partage d'application entre client, serveur d'application, et serveur de base de données d'entreprise.

Comparaison des deux types d'architecture

L'architecture à deux niveaux est donc une architecture client/serveur dans laquelle le serveur est
polyvalent, c'est-à-dire qu'il est capable de fournir directement l'ensemble des ressources demandées par le
client.

Dans l'architecture à trois niveaux par contre, les applications au niveau serveur sont délocalisées, c'est-à-
dire que chaque serveur est spécialisé dans une tâche (serveur web/serveur de base de données par
exemple). L'architecture à trois niveaux permet :

 Une plus grande flexibilité/souplesse ;


 Une sécurité accrue car la sécurité peut être définie indépendamment pour chaque service, et à
chaque niveau ;
 De meilleures performances, étant donné le partage des tâches entre les différents serveurs.

L'architecture multiniveaux

Dans l'architecture à 3 niveaux, chaque serveur (niveaux 2 et 3) effectue une tâche (un service) spécialisée.
Un serveur peut donc utiliser les services d'un ou plusieurs autres serveurs afin de fournir son propre
service. Par conséquent, l'architecture à trois niveaux est potentiellement une architecture à N niveaux...

6
Présentation de l'architecture d'égal à égal

Dans une architecture d'égal à égal (en anglais peer to peer), contrairement à une architecture de réseau de
type client/serveur, il n'y a pas de serveur dédié. Ainsi chaque ordinateur dans un tel réseau est un peu
serveur et un peu client. Cela signifie que chacun des ordinateurs du réseau est libre de partager ses
ressources. Un ordinateur relié à une imprimante pourra donc éventuellement la partager afin que tous les
autres ordinateurs puissent y accéder via le réseau.

Inconvénients des réseaux d'égal à égal

Les réseaux d'égal à égal ont énormément d'inconvénients :

 ce système n'est pas du tout centralisé, ce qui le rend très difficile à administrer
 la sécurité est très peu présente
 aucun maillon du système n'est fiable

Ainsi, les réseaux d'égal à égal ne sont valables que pour un petit nombre d'ordinateurs (généralement une
dizaine), et pour des applications ne nécessitant pas une grande sécurité (il est donc déconseillé pour un
réseau professionnel avec des données sensibles).

Avantages de l'architecture d'égal à égal

L'architecture d'égal à égal a tout de même quelques avantages parmi lesquels :

 un coût réduit (les coûts engendrés par un tel réseau sont le matériel, les câbles et la maintenance)
 une simplicité à toute épreuve!

7
Mise en œuvre d'un réseau peer to peer
La mise en œuvre d'une telle architecture réseau repose sur des solutions standards :

 Placer les ordinateurs sur le bureau des utilisateurs


 Chaque utilisateur est son propre administrateur et planifie lui-même sa sécurité
 Pour les connexions, on utilise un système de câblage simple

Il s'agit généralement d'une solution satisfaisante pour des environnements ayant les caractéristiques
suivantes :

 Moins de 10 utilisateurs
 Tous les utilisateurs sont situés dans une même zone géographique

Administration d'un réseau poste à poste


Le réseau poste à poste répond aux besoins d’une petite entreprise. On désigne par le terme
"Administration" :

1. Gestion des utilisateurs et de la sécurité


2. Mise à disposition des ressources
3. Maintenance des applications et des données
4. Installation et mise à niveau des logiciels utilisateurs

Dans un réseau poste à poste typique, il n’y a pas d’administrateur. Chaque utilisateur administre son
propre poste. D'autre part tous les utilisateurs peuvent partager leurs ressources comme ils le souhaitent
(données dans des répertoires partagés, imprimantes, cartes fax etc.)
Notions de sécurité
La politique de sécurité minimale consiste à mettre un mot de passe à une ressource. Les utilisateurs d’un
réseau poste à poste définissent leur propre sécurité et comme tous les partages peuvent exister sur tous les
ordinateurs, il est difficile de mettre en œuvre un contrôle centralisé. Ceci pose également un problème de
sécurité globale du réseau car certains utilisateurs ne sécurisent pas du tout leurs ressources.

- Procédures stockés
- Déclencheurs

8
Chapitre II : Réaliser une application Client/Serveur avec interbase

1. Historique
L interbase est né des travaux d'un développeur de Rdb de DEC, Jim Starkey. Borland acheta cette
dernière, elle devint propriétaire d'InterBase. Plus récemment Borland/Inprise fit d'InterBase une entité
autonome et décide l'été 2000 de mettre InterBase en Open Source.

Aujourd'hui, InterBase est donc soutenue d'une part au sein de Source Forge ou d'IBPoenix, d'autre part par
Borland. Début Octobre 2000, la version vendue est la 5.5, la version en Open Source la 6.01 .

En résumé InterBase

 Vous permet sortir du BDE et de passer au client/serveur,


 est supporté par Borland
 est un SGBD puissant, fiable et facile à installer et à déployer.

2.Définition :

InterBase est un système de gestion de bases de données relationnelles complet, implémenté sous forme
d'une architecture client/serveur à deux niveaux : une application client et une technologie serveur offrant
un support transparent au travers de réseaux hétérogènes.

[Link] et Configuration du serveur Interbase

Pour installer Interbase:

1- Insérer votre CD d'installation de Interbase ou double cliquer sur l'exécutable:

Dans notre exemple, nous observons une installation de la version 6.0. Cependant l'environnement de
l'installation (le design) peut varier en fonction de la version, mais le plus important c'est l'uniformisation
de la procédure d'installation, cette procédure est la même pour toutes version.
Pour continuer notre procédure d'installation nous devons valider notre installation en cliquant sur " Next "
ou" Suivant ".
Dans la suite de notre installation, l'assistant nous propose de choisir le type d application que nous
désirions pour notre installation. Ce choix est le fait que l'exécutable du serveur Interbase contient à la fois
deux applications, une application dite Client/Serveur et l'autre dite Client . Pendant ce temps, quelle
application choisir pour l’installation?, le choix d'une application pour notre installation est important dans
la mesure où ce choix est fonction de ce que nous souhaitons faire, mais la question est de savoir ce nous
pouvons faire avec chacune des applications! pour faire suivons ensemble la suite:

2- Interbase Client/Serveur est une application qui intègre à la fois le serveur et le Client, la réunion de
ces deux éléments permet non seulement à la partie serveur de créer votre base de données Interbase), vos
tables ou entités, vos procédures stockées, vos domaines, vos indexes, vos scripts sql et aussi la possibilité
d'ajouter un utilisateur en précisant ses droits d'accès et par conséquent de le supprimer aussi...et le
client permet d'accéder à la base de données et de l'administrer .

3- Interbase client doit être installer sur tous les autres postes en réseau qui souhaiteraient accéder à une

9
base de données existante se trouvant sur l'un des ordinateurs en réseau sur lequel est installer Interbase
Client/Serveur ainsi ce poste est le serveur et les autres postes sur lesquels est installer Interbase client sont
appelés les clients .

Procéder au choix de l'application à installer:

Dans ce choix, nous vous conseillons de bien choisir Interbase Client/Serveur pour faire votre
développement des logiciels réseaux après quoi vous choisirez Interbase client pour les postes clients en
réseau afin de tester vos applications réseaux.

Après le choix de notre application à installer, nous devons choisir le répertoire de destination (le répertoire
où nous devons installer notre application). Le répertoire de destination par défaut est c:/Programmes
files/borland . Par la suite nous cliquons sur "suivant" pour poursuivre l'installation:

Nous observons à une copie des fichiers et dll de notre application. l'installation totale de notre application
doit se terminer et cela doit se signaler par une demande de redémarrage de notre ordinateur:

Vous devez cliquez sur OK afin de redémarrer la machine et permettre à notre application de s'initialiser.

Configuration de Interbase

Après l'installation de notre serveur, nous allons nous intéresser à la phase de sa configuration.
Nous devons d'abord procéder à son lancement, pour ce faire nous devons cliquer sur: démarrer +
programmes + Interbase + IBConsole . Une fois que le serveur IBConsole lancé;
Comme le montre le serveur, double cliquer sur l'icône InterBase Server
et vous obtiendrez une fenêtre mentionnée " Register Server and Connect ", c'est la phase importante de
la configuration de votre serveur Interbase.

La configuration du serveur:
Cette phase présente deux éléments importants à comprendre avant toutes utilisations que sont: Local
Server et Remote Server .

1- Local Server est l'option qui nous permet de construire une Base de Données locale, accessible en
réseau local sur plusieurs ordinateurs appelés clients depuis un ordinateur principal appelé serveur. Sa
configuration se fait comme l'indique le schéma ci-dessus.
a)- Vous cochez Local server
b)- Vous mettez une description par exemple (Serveur de l'école)
c)- Cocher: Save Alias Information
d)- User Name: SYSDBA (vous avez la possibilité de changer le nom utilisateur après)
e)- PassWord: masterkey (vous avez la possibilité de changer le mot de passe après)
f)- Cliquer sur OK

Remarque: Vous verrez le serveur affiché un icône marqué Local Server avec un voyant de couleur
verte pour justifier la réussite de votre connexion locale.

2- Remote server (serveur mondial) est l'option qui nous permet de créer une Base de Données accessible
à tout point du monde pourvu que vous soyez connecté à l'internet. Dans la procédure de sa réalisation,

10
vous fournissez l'adresse IP du serveur (la machine qui héberge votre Base de données), cette machine
pour être accessible doit être connectée à l'internet.
L’adresse Ip par défaut de toutes bases de données Intebase pour le protocole TCP/IP est: [Link] à
défaut de celle du serveur. La configuration de Remote Server se fait comme suite:

a)- Cocher: Remote Server


b)- NetWork protocol: TCP/IP
c)- Server Name: [Link]
d)- Alias Name: Mettez par exemple (Ecole_NetWork) rien que pour nomme votr serveur.
e)- Vous mettez une description par exemple (Serveur de l'école)
f)- User Name: SYSDBA (vous avez la possibilité de changer le nom utilisateur après).
g)- PassWord: masterkey (vous avez la possibilité de changer le mot de passe après).
Enfin cliquer sur OK.

Remarque: Vous verrez le serveur affiché un icône maqué Ecole_NetWork car c'est le nom que nous
avons choisi pour la proprieté Alias Name avec un voyant de couleur verte pour justifier la réussite de
votre connexion mondiale.

1. Configuration de serveur d’interbase (Interbase server)


1-1 Comment enregistrer un serveur :

On peut enregistrer un serveur local (server local) ou un serveur distant (remote server) par l’utilisation de
l’un des méthodes :

a) Double clique sur l’entrer « Interbase server »


b) Menu Server  register
c) Clique à droit sur un serveur  register

d) A l’aide de la barre d’outils

1-2 Comment supprimer l’enregistrement d’un serveur :

On peut supprimer l’enregistrement d’un serveur local (server local) ou d’un serveur distant (remote
server) par l’utilisation de l’un des méthodes :

a) Menu Server Unregister


b) Clique à droit sur un serveur  Unregister
c) A l’aide de la barre d’outils

Remarque :

1- on ne peut pas supprimer l’enregistrement d’un serveur connecté. Alors pour le supprimer, il faut
déconnecter le serveur.
2- On peur enregistrer un seul serveur local et plusieurs serveur distants

1-3 Commet connecté un serveur :

On peut faire connecter d’un serveur local (Server local) ou d’un serveur distant (Remote server)
par l’utilisation de l’un des méthodes :

11
a) Menu Server Login  Entrer User name = SYSDBA et Password = masterkey
b) Clique à droit sur un serveur  Login  Entrer User name = SYSDBA et Password =
masterkey
1-4 Commet déconnecté un serveur :

On peut faire déconnecter un serveur local (Server local) ou un serveur distant (Remote server) par
l’utilisation de l’un des méthodes :

a) Menu Server Logout  yes


b) Clique à droit sur un serveur  Logout  yes

1-5 Afficher les propriétés d’un serveur

On peut afficher les propriétés d’un serveur local (Server local) ou d’un serveur distant (Remote
server) par l’utilisation de l’un des méthodes :

a) Cliquer à droit sur le serveur  propriété


b) Menu Server propriété

Après l’exécution de l’action, une boite de dialogue s’affiche. Elle contient les informations sur
l’alias de serveur, la description de serveur…...

On peut modifier seulement la description de serveur local (Local server), et l’Alias et la description
pour le serveur distant (Remote server).

2. Les outils d’entreprise de l’Interbase


Pour la gestion des serveurs d’interbase, on utilise les deux outils suivants :

1- Interbase Server Manager


L’outil Interbase server manager permet de configurer le démarrage de service soit de façon automatique, soit
manuel.

12
2- IBConsole

IBConsole est le principal outil administratif de l’Interbase. En effet, depuis cet outil vous pouvez accéder
à toutes les options et fonctionnalité du serveur et de toutes les bases. Il fournit une interface utilisateur qui
permet aux utilisateurs d'effectuer les tâches suivantes :

 Enregistrer des serveurs (Local server ou Remote server).


 Configurer toutes les options relatives à chaque serveur enregistré.
 Créer et administrer l'ensemble des bases de données, objets, utilisateurs et autorisations concernant
chaque serveur enregistré.
 Concevoir et tester des instructions SQL par appel de l’outil « Interactive SQL ».

Pour lancer IBConsole, à partir de la barre des tâches, via le chemin suivant :

"Démarrer Tous les programmes" --> "Interbase" --> "IBConsole". Lorsqu'on clique sur IBConsole, la
console se présente comme la montre la figure ci-dessous.

La partie gauche de la fenêtre contient les serveurs. Les objets qu'il contient sont classés dans une hiérarchie,
que l'on peut développer en cliquant sur le signe +. On ne peut pas cacher l'explorateur. Dans la partie droite
de la fenêtre s'affiche le contenu de l'objet qui est sélectionné dans la partie gauche.

13
3-Présentation de ISQL
Définition :
SQL Interactif : Interactive SQL est un utilitaire fourni avec interbase qui permet d'exécuter
des instructions SQL, de créer des scripts et d'afficher les données de la base.

- Démarrage d'Interactive SQL


Pour démarrer Interactive SQL et vous connecter à la base de données

- Interface Interactive SQL


Description de la fenêtre principale Interactive SQL

Une fois la fenêtre Interactive SQL s'affiche, elle contient :


- Barre de Menus en haut de la fenêtre. La barre de menu contient :

14
- Barre d’outil :

- Deux volets qui sont les suivants :

La fenêtre ISQL a pour rôle

15
3. Création d'une database
Toutes les tables, index et autres éléments sont rassemblés en un seul fichier database. L'extension usuelle
est .gdb Vous pouvez créer autant de database que vous le souhaitez. Généralement un programme
accèdera à une database dans laquelle se trouvent les tables et les index liés. Cliquez sur Local Server. Par
menu Server/Login, ouvrez une connexion avec le serveur. (le mot de passe est bien entendu masterkey).
La connexion étant ouverte, vous voyez apparaître Databases dans le volet gauche. Par menu
Database/CreateDatabase, ouvrez le panneau de création de la database.
Indiquez le nom d'alias, ainsi que le nom du fichier (avec l'extension .gdb)

Cliquez sur Ok. Votre database est créée.


Par la suite, lorsque vous réouvrirez IBConsole, vous double-cliquez directement Local Server, puis
MyInitialDatabase.
Par menu Database/Properties, puis onglet General, mettez l'option Forced Writes à Enabled.

Cliquez sur Ok.


De retour dans l'explorer d'IBConsole, vous voyez les différentes composantes d'une database :

16
Intéressons-nous à la principale de ces composantes : la table.
4. Création d'une table
Vous pouvez créer votre première table directement à partir d'IBConsole.
Par menu Tools/Interactive SQL, saisissez la commande suivante :

CREATE TABLE MaTable


(
Pk_Numero INTEGER NOT NULL,
Nom VARCHAR(30),
Telephone CHAR(16),
DateAppel TIMESTAMP,
Rappeler CHAR(1),
Montant NUMERIC(18,4),
CONSTRAINT Pk_Numero PRIMARY KEY (Pk_Numero)
)
puis exécutez la par Query/Execute. Votre première table est crée.
Fermez le panneau Interactive SQL. Pour ne voir que votre table dans la liste, décochez View/System
Data.
Double-cliquez sur MATABLE. Vous voyez la structure de votre table. L'onglet Metadata vous montre
l'ordre SQL régénéré automatiquement par IBConsole à partir de la structure de la table. Enfin, l'onglet
Data vous permet de saisir des données.

17
Démarrer le serveur InterBase

Pour démarer le serveur InterBase, nous devons ouvrir IBConsole. Il suffit pour cela de se rendre dans le
menu "Démarrer" de Windows puis sur "Programmes", "InterBase" et enfin sur "IBConsole".

Allez dans le menu "Server" puis cliquez sur "Register".

Choisissez "Local Server" si le serveur InterBase se trouve sur votre ordinateur.


Dans la zône de saisie "User Name", tapez "SYSDBA" et pour "Password", mettez "masterkey" (par
défaut). Cliquez sur le bouton "OK" pour valider.

A la prochaine utilisation, une boite de dialogue vous demandera juste le mot de passe.

Créer une base de données

Dans IBConsole, allez dans le menu "Database" puis sur "Create Database...".

Indiquez le chemin de votre base de données que vous souhaitez créer (l'extension est "GDB") ainsi qu'un
nom d'alias. Cliquez sur le bouton "OK" pour valider vos choix.

Le chemin que vous choisirez pour votre base de données doit être valide.

18
Votre base de données est alors créée.

Votre base de données sera accessible dans l'explorateur de IBConsole dans "Local Server" et "Exemple".

Nous allons travailler dans un système transactionnel (cela permet de limiter les pertes de données).
Allez dans le menu "Database" puis sur "Properties...".

Dans les "Options", mettez à "Enabled" "Forced Writes". Cliquez sur le bouton "Apply" puis sur "OK".

Créer une table

L'étape suivante est la création d'une table. Allez dans le menu "Tools" de IBConsole puis sur "Interactive
SQL...". Une nouvelle s'ouvre alors.

Saisissez le code suivant :

CREATE TABLE ANNUAIRE (


ID INTEGER NOT NULL,
NOM VARCHAR(30),
PRENOM VARCHAR(30),
NUMERO VARCHAR(30),
CONSTRAINT ID PRIMARY KEY (ID)
)

Pour créer la table, allez dans le menu "Query" et cliquez sur "Execute".

19
Fermer la fenêtre "Interactive SQL".

En double cliquant sur la table "ANNUAIRE", vous pouvez voir toute la structure de la table.
Vous pouvez même ajouter des enregistrements en allant dans l'onglet "Data".

Composants Bases De Données Sous Delphi


Delphi dispose de nombreux composants permettant d’accéder aux bases de données et de les
exploiter. Delphi répartit ces composants selon les mécanismes d’accès aux données qui diffèrent d’une
technologie à l’autre. Sur la palette des composants, les composants bases de données sont regroupées dans
six pages :
 La page BDE (Borland Database Engin) . Le modèle BDE représenté par la page BDE
correspond aux composants du moteur d’accès BDE qui constitue une interface fonctionnelle API qui
permet de travailler avec les bases de données. Le modèle BDE est le meilleur moyen d’exploiter une base
de données Paradox ou des tables dBase.
 La page ADO (Activex Data Objects)
 La page dbExpress
 La page InterBase
 La Page AccèsBD

20
 La page BDE de la palette de composants contient les composants qui utilisent le moteur de base de

données Borland (BDE, Borland Database Engine). Le BDE définit une API importante pour
l'interaction avec les bases de données.
 La page ADO de la palette de composants contient les composants qui utilisent ActiveX Data Objects

(ADO) pour accéder aux informations de base de données via OLEDB. ADO est un standard Microsoft.
De nombreux pilotes ADO permettent de se connecter à différents serveurs de bases de données.
 La page dbExpress de la palette de composants contient les components qui utilisent dbExpress pour

accéder aux informations de base de données. dbExpress est un ensemble de pilotes légers qui offrent
l'accès le plus rapide aux informations de base de données.
 La page InterBase de la palette de composants contient les composants qui accèdent directement aux

bases de données InterBase.


 La page AccèsBD de la palette de composants contient des composants pouvant être utilisés avec

n'importe quel mécanisme d'accès aux données.

2- Architecture des bases de données

Les applications de bases de données sont construites à partir d'éléments d'interface utilisateur, de
composants qui représentent les informations de bases de données (ensembles de données) et de
composants qui connectent ceux-ci les uns aux autres et à la source des informations de bases de données.
L'architecture de votre application de base de données représente l'organisation de tous ces éléments.

Bien qu'il existe de nombreuses façons d'organiser les composants d'une application de base de données, la
plupart d'entre elles suivent le schéma général illustré par la figure suivante :

Fiche interface utilisateur

Il est conseillé d'isoler l'interface utilisateur sur une fiche (forme) complètement indépendante du
reste de l'application.
Module de données

21
Si vous avez isolé votre interface utilisateur dans sa propre fiche, vous pouvez utiliser un module de
données afin d'y placer les composants qui représentent les informations de base de données (ensembles de
données), et les composants qui connectent ces ensembles de données aux autres éléments de votre
application.
Source de données

Le premier élément du module de données est une source de données. La source de données relie
l'interface utilisateur à un ensemble de données qui représente les informations d'une base de données.
Plusieurs contrôles orientés données disposés sur une fiche peuvent partager une même source de données.
Dans ce cas, le contenu de chaque contrôle est synchronisé : lorsque l'utilisateur parcourt les
enregistrements, les valeurs figurant dans les différents champs de l'enregistrement actif sont affichées dans
les contrôles correspondants.
Ensemble de données

L'ensemble de données constitue le cœur de votre application de base de données. Ce composant


représente un ensemble d'enregistrements de la base de données sous-jacente. Ces enregistrements peuvent
être les données d'une seule table de base de données, un sous-ensemble des champs ou des
enregistrements d'une table ou des informations émanant de plusieurs tables jointes en une vue unique.

Connexion des données

Différents types d'ensembles de données utilisent différents mécanismes de connexion aux


informations de la base de données sous-jacente. Ces différents mécanismes déterminent les variantes
majeures de l'architecture des applications de bases de données que vous créez.

3-Conception de l'interface utilisateur

La page ContrôleBD de la palette des composants offre un ensemble de contrôles orientés données
qui représentent les données de champs d'un enregistrement de base de données et qui permettent aux
utilisateurs de modifier ces données et de répercuter ces modifications dans la base de données.

Delphi + Interbase - Client Serveur

Pour illustrer Delphi et InterBase, nous allons réaliser un exemple très simple reprenant la base de
données ainsi que la table que nous avons créer ci-dessus.

Créez un nouveau projet et ajoutez un module de données (menu "Fichier" de Delphi, puis "Nouveau"
et "Module de données").

A partir de l'onglet InterBase Express de la palette de composants,

22
déposez les composants IBX suivants et un composant TDataSource à partir de l'onglet AccèsBD.

Création de la base de données Interbase à l’aide de delphi

I. Interbase dans delphi


1. Création de la base

Nous allons créer une base contenant les stages offerts par l'Institut Pascal. Nous placerons cette base dans
le répertoire "..\data\" (situé au même niveau que le .EXE. Le .ZIP téléchargeable créera ce répertoire
automatiquement). Le nom du fichier sera "Institut_Pascal.GDB".

Pour créer la base:

créez une nouvelle application et appelez-la "p_ib_create_base"


sélectionnez dans la page "Interbase" de la Palette le composant tIbTransaction:

et posez ce composant sur la tForm


sélectionnez de même une tIbDatabase

et placez-la sur la tForm


initialisez [Link] vers IbTransaction1
utilisez un tButton pour créer la base:

 placez un tButton, nommez-le create_base_, et créez sa méthode OnClick

23
 voici le code de cette méthode:

procedure TForm1.create_database_Click(Sender: TObject);


begin
with IbDatabase1 do
begin
DatabaseName:= '..\data\Institut_Pascal.gdb';
SqlDialect:= 3;

[Link]('USER "SYSDBA"');
[Link]('PASSWORD "masterkey"');
[Link]('PAGE_SIZE 4096');

CreateDatabase;
end; // with IbDataBase1
end; // create_database_Click

compilez et exécutez
cliquez Button1
le répertoire ..\data\ contient bien le fichier "Institut_Pascal.GDB" dont la taille est d'environ 580 K

Notez que:

 si le fichier [Link] existait déjà il faut tester sa présence (FileExists) et l'effacer (Erase)
 si nous souhaitons répéter la création, il faudrait purger les Params avant tout ajout par Add
([Link])

Vous pouvez télécharger ce projet "ib_create_base.zip".

2. Connection à une base

tIbDatabase est utilisé par la suite pour assurer les échanges entre notre application et la base que nous
venons de créer.

Ce composant doit être initialisé avec:

 dans DataBaseName, la chaîne de connection qui est


o si nous travaillons en local, le chemin:
c:\programs\interbase\data\Institut_Pascal.gdb
ou
..\data\Institut_Pascal.gdb
o l'URL du PC qui héberge le Serveur:
[Link]\ c:\programs\interbase\data\Institut_Pascal.gdb
HostName\ c:\programs\interbase\data\Institut_Pascal.gdb
[Link]\ c:\programs\interbase\data\Institut_Pascal.gdb
 dans Params, les paramètres propres à Interbase. Dans notre cas, les paramètres par défaut du
Serveur, plus le nom d'utilisateur et le mot de passe.

Une fois les propriétés initialisées, nous pouvons tester la connection en basculant [Link]
sur True.

A titre de vérification:

24
posez un second tIbDataBase sur la forme

initialisez [Link] avec


..\data\Institut_Pascal.gdb
cliquez deux fois sur IbDatabase2 pour ouvrir l'éditeur de tIbDatabase
Delphi présente le dialogue suivant:
sélectionnez "User Name" et tapez SYSDBA
sélectionnez "Password" et tapez masterkey
supprimez la coche de "Login Prompt"
e résultat est:
fermez l'éditeur
sélectionnez Connected et basculez sa valeur sur True
au bout d'un "petit" instant, la valeur bascule sur True

Notez que:

 la connection est le test IMPERATIF pour vérifier que nous pouvons travailler en Interbase. Nous
recommandons d'effectuer cette connection systématiquement avant de poser des tonnes de
composants sur la tForm ou d'écrire des milliers de lignes
 si nous connectons la base en mode conception, Delphi ouvrira aussi la base lorsque l'exécution
sera lancée. Ces deux connections sont comptabilisés par le gestionnaire de licences Interbase
comme 2 connections séparées (ce sont bien deux processus Windows). Si vous travaillez en
utilisant la version Delphi d'Interbase, il vaut mieux fermer la connection en mode conception, puis
la rouvrir lors de l'exécution par:
[Link];

3. Créer une Table

Nous allons créer une table contenant pour chaque formation:

 un code (par exemple 8)


 un nom (par exemple "Delphi Interbase")
 un prix (par exemple 1.400)

Pour cela nous devons envoyer une requête en langage SQL vers le Serveur Interbase.

25
La syntaxe de cette requête est:

CREATE TABLE formations


(f_numero INTEGER, f_nom CHARACTER(11), f_jours INTEGER, f_prix
NUMERIC(5, 2) )

Il suffit donc de choisir un nom de table, et le nom de chaque colonne avec son type.

Parmi les types autorisés par Interbase citons:

 INTEGER pour les valeurs entières 32 bits


 SMALLINT pour les valeurs entières 16 bits
 NUMERIC(decimales, précision) pour une valeur numérique flottante
 DATE pour une date
 CHARACTER(taille) pour des caractères

Pour envoyer cette requête vers le Serveur:

 nous utilisons un tIbDataBase qui assurera la connection vers le Serveur


 nous utilisons un tIbQuery
o nous le relions à tIbDatabase
o nous plaçons la requête SQL dans sa propriété [Link] (via l'Inspecteur ou en code)
o nous appelons [Link]
 la création n'est visible par tout le monde que si la transaction qui est utilisée pour la création de la
table est confirmée

4.2 - Utilisation de SQL

La requête à envoyer au Serveur est placée dans [Link]. [Link] est un descendant de tStrings.
Nous pouvons donc utiliser, par exemple:
[Link]('CREATE TABLE formations (f_numero INTEGER, f_nom CHARACTER(11))');

Pour construire la requête:

 nous pouvons utiliser Add pour ajouter une ligne de requête, Text pour affecter une requête, Clear
pour purger tout texte antérieur, ou même LoadFromFile pour lire un fichier .txt contenant la
requête:

[Link]('cree_formation.txt');

La mise en page n'a aucune importance pour le Serveur: la requête peut être répartie en plusieurs lignes:

[Link]('CREATE TABLE');
[Link](' formations ');
[Link](' (f_numero INTEGER, f_nom CHARACTER(11))');

 nous pouvons entrer la requête en utilisant l'Inspecteur d'Objet. Si nous cliquons sur Sql, Delphi
affiche:

26
et vous pouvez taper manuellement la requête dans la partie "SQL"

 nous pouvons aussi créer la String en plusieurs étapes par toutes les primitives de String telles que
la concaténation, Insert, le test par Pos ou autre. Par exemple:

l_requete:= 'CREATE TABLE '+ [Link]+ ' (';


l_requete:= l_requete+ [Link]+ ')';
[Link](l_requete);

Utilisation de la base de données interbase :

Connexion à la base de données

Nous allons maintenant se connecter à notre base de données.


Double-cliquez sur le commosant TIBDatabase.

Renseignez les différents champs comme sur l'image ci-dessus.

N'hésitez pas à cliquer sur le bouton "Tester" pour vérifier si la connexion avec las base de données
a réussi.

Cliquez sur le bouton "OK" pour valider.


Mettez la propriété "Connected" du composant TIBDatabase à "True".

Ajouter le module de données au projet

Il suffit d'ajouter l'unité du module de données (DataModule) au projet.

Uses Unit2;

27
Lier les composants

Dans la form, ajoutez un composant TDBGrid et TDBNavigator de l'onglet "ContrôleBD" de la palette de


composants.

Nous devons lier tous ces composants entre eux.


Ce tableau récapitule les différentes liaisons à effectuer:

Composant Propriété Valeur


IBDataBase1 DefaulTransaction IBTransaction1
IBDataBase1 LoginPrompt False
IBTransaction1 DefaultDataBase IBDatabase1
IBQuery1 Database IBDatabase1
IBQuery1 SQL SELECT * FROM ANNUAIRE
IBDataSource1 DataSet IBQuery1
DBGrid1 DataSource DataModule2.DataSource1
DBnavigator1 DataSource DataModule2.DataSource1

Mettez la propriété "Active" des composants "IBTransaction1" et "IBQuery1" à "True".

Vous avez réalisé votre premier programme avec InterBase.

28
Chapitre III : Créer une application Delphi, Client/Serveur avec ADO

Définition de l’ADO

//**************************************************************************

PROCÉDURE STOCKÉE
Une procédure stockée ressemble à une fonction en delphi. Cette procédure est entreposée sur le serveur de
base de données, le client peut l'appeler. Une procédure peut avoir 0 ou plusieurs paramètres et retourné 0
ou plusieurs valeurs. Une procédure stockée est compilée sur le serveur lorsqu'elle est créée. Une requête
est compilée à chaque fois qu'elle est envoyée au serveur. Il y a quelques avantages à utiliser les procédures
stockées:

 Plus rapide, car elle est déjà compilée sur le serveur


 Diminue le trafic réseau car seuls les paramètres et le nom de la requête transitent par le réseau
 Partage des ressources, plusieurs programmes peuvent utilisé la procédure
 facilitée de maintenance, la mise à jour de la procédure profite à tous les programmes

//****************************************************

[Link];
try
[Link][0].AsString := [Link]; <- manière d'initialiser le
paramètre d'entrée de ta procédure
[Link];
[Link] := [Link]('FinalValue').AsString; <- récupération de
la valeur retournée par une procédure.
finally
[Link];
end;
//****************************************************

L’ADO qui signifie en clair « ActiveX Data Objects », est un système d’accès aux données
purement Microsoft dit de haut niveau. C’est-à-dire que la complexité de la connexion et des
opérations de lecture écriture est masqué pour le développeur qui l’utilise.

Le système ADO a donc l’énorme avantage, si vous désirez vous connecter à des bases Microsoft
comme Access ou SQL/Server, d’avoir ses bibliothèques en standard sur la plupart des versions récentes
de Windows (98/2000/XP). Ce qui facilite le déploiement en clientèle de vos applications.

29
1. Partie serveur

1.1. Base de données

D’abord, nous allons créer la structure de notre base de données. L’intérêt de MS-Access fait que nous
n’avons qu’un seul fichier généré. Les tables comme les index sont en effet intégrés dans le fameux .MDB.

Notre base Client se compose d'une table unique du même nom et dont la structure est la suivante :

La colonne

[Link] étant déclarée en tant que clé primaire, elle sera ainsi automatiquement

Indexée.

1.2. Connexion

Il est courant pour établir un point de connexion sur une base de données à travers l'ADO, de créer ce
que Microsoft appelle un DSN3. Mais ce n'est pas obligatoire et cela tend à ralentir la connexion ADO.

30
Donc dans ce support nous n'aborderons pas ce principe puisqu'avec Delphi, nous pouvons
complètement nous passer de cette étape.

L'utilisation d'un DSN est utile notamment pour permettre à l'utilisateur de modifier lui- même le chemin
d'accès à la base MS-Access. Il est cependant contraignant car il vous faudra créer ce DSN sur chaque
poste où vous installerez votre application.

Vérifiez que vous disposez bien de l'accès ODBC à MS-Access. Pour cela, allez dans le panneau de
configuration Windows et lancez l'icône de l'Administrateur ODBC.

Dans l'onglet « Pilote », vérifiez que le pilote ODBC Microsoft Access est installé. S'il n'est pas dans la
liste, vous devez obligatoirement l'installer.

Reportez-vous sur le site de Microsoft en tapant le mot clé MDAC pour obtenir le paquetage
nécessaire. Attention cependant à la version que vous téléchargez. Le MDAC 2.7 n'inclut pas par exemple,
le pilote OLE DB Microsoft Jet. Préférez une version 2.1.

2. Partie client

Nous allons maintenant passer à la programmation de notre application AdoPrimo. Créez pour cela un
dossier du même nom et dans lequel nous allons mettre l'ensemble des fichiers du projet. Notre application
va se construire en quatre étapes très simples :

 La définition de l'interface utilisateur avec la fiche principale.

 La mise en place des composants ADO pour l'accès aux données.

 La mise en place du composant d'interface entre l'ADO et l'interface utilisateur.

 La mise en place des composants de gestion des données pour l'affichage et les opérations d'écriture des
données.

31
Nous allons ainsi avoir une hiérarchie de composants qui nous permet d'afficher et de modifier les données
de notre table Access.

2.1. Structure de l’application

L'application ne comporte qu'une seule fiche que nous appellerons fPrimo et uPrimo pour son unité
Pascal.

Une fois Delphi lancé, enregistrons notre fiche principale avec comme nom d’unité

Pascal uPrimo et en changeant les propriétés suivantes pour la fiche :

 Name pour « fPrimo »

 Caption pour « Gestion Client ADO ».

Enregistrez enfin le projet sous le nom AdoPrimo. Dans le menu Projet / Options, donnez une jolie
icône pour votre application.

2.2. Interface utilisateur

32
Pour que notre interface soit agréable pour l'utilisateur, nous allons d'abord placer un composant
PageControl sur la fiche.

PageControl se trouve sur la palette des composants dans l'onglet Win32...

Une fois le composant posé, dimensionnez le pour qu'il tienne sur la totalité de la surface de la
fiche. Vous pouvez laisser le nom donné par défaut PageControl1, cela n'a pas d'importance.

Dans la Vue arborescente des objets, faîtes un clic droit sur PageControl1 et choisissez le menu Nouvelle
page pour ajouter un onglet de feuille.

Renouvelez l'opération une seconde fois afin d'obtenir deux onglets attachés à PageControl1 et
nommés respectivement TabSheet1 et TabSheet2. Changez les propriétés Caption de ces deux onglets
pour “&Liste” et “&Fiche”.

Votre fiche doit maintenant ressembler à l'image ci-dessous :

2.3. La couche ADO

Nous allons maintenant utiliser les composants ADO. Ce sont eux qui vont assurer la connexion à la base
de données MS-Access. Depuis la palette, placez un composant

ADOConnection et un composant ADOTable.

33
Nous allons ensuite procéder au paramétrage de la chaîne de connexion afin de déterminer le pilote de
données à utiliser et le chemin d'accès à la base. Depuis l'Inspecteur d'objets, sélectionnez dans la liste
votre composant ADOConnection1.

Double cliquez sur la propriété LoginPrompt pour la mettre à False afin de ne pas avoir de
demande d'identification utilisateur lors de la connexion à la base. Cliquez sur le bouton de configuration
de la propriété ConnectionString (comme illustré à gauche).

L'Assistant de connexion apparaît. Cliquez sur le bouton Construire.

34
Sélectionnez le pilote

Microsoft Jet 4.0 OLE DB Provider.

Cliquez sur le bouton Next >>

A l'étape 1, sélectionnez votre base de données [Link]. En principe, vous êtes déjà dans le bon
répertoire. A l'étape 2, inutile de supprimer le nom d'utilisateur (User name) : Admin si vous laissez cocher
la case « Blank password » (mot de passe vide).

Enfin, cliquez sur le bouton Test Connection pour vérifier que la connexion est correcte. Et en principe,
vous devez voir s'afficher :

Passons à notre composant ADOTable1.

35
Toujours depuis l'Inspecteur d'objets, modifiez les propriétés suivantes :
1. Sélectionnez le composant ADOConnection1 dans la liste de la propriété Connection.
2. Sélectionnez la table Client dans la liste de la propriété TableName.
3. Passez à la valeur True dans la propriété Active.
Vous devez maintenant en être au même point que dans l'illustration de droite.

Passez à nouveau dans la fenêtre


Vue arborescente des objets.
Faîtes un clic droit sur le composant
ADOTable1 et sélectionnez le menu

Editeur de champs
Une petite fenêtre s'ouvre comme ci-dessous

Cette petite fenêtre va nous permettre d'insérer les colonnes de la table Client qui vont nous servir ensuite
pour l'affichage des données.

36
Appuyez sur les touches Ctrl + A pour afficher la liste des champs disponibles.

Par défaut, tous les champs de la table sont sélectionnés.

Enlevez le champ Id qui n'a pas besoin d'être affiché puisqu'il s'agit de la clé primaire de la table.

Cliquez sur le bouton OK pour valider. Voilà notre couche ADO est paramétrée.

2.4. Accès aux données

Nous allons utiliser un composant DataSource pour nous permettre de faire le lien entre les composants
ADO d'accès aux données et les contrôles d'affichage de données de notre fiche.

Ce composant se trouve sur l'onglet Accès BD.

Comme pour les deux composants ADO, placez le DataSource en haut à droite pour ne pas être gêné.

Dans l'Explorateur d'objets, placez-vous sur DataSource1. Mettez-vous sur la propriété DataSet et
sélectionnez dans la liste ADOTable1.

Votre Vue arborescente des objets doit maintenant afficher la hiérarchie des composants comme
dans l'illustration ci-dessous.

37
2.5. Affichage des données

Placez maintenant sur votre fiche et sur l'onglet Liste, un composant DBGrid.

Agrandissez votre composant DBGrid1 aux dimensions maxima de l'onglet.

Placez-vous dans l'Explorateur d'objets et sélectionnez dans la propriété DataSource, le composant


DataSource1.

L'affichage de vos données apparaît alors dans la grille.

2.6. Modification des données

Le composant DBGrid est généralement utilisé pour avoir une vision globale des
enregistrements. Il est en revanche peu pratique pour la modification d'une ligne
d'informations.

38
Nous allons donc passer sur l'onglet Fiche de notre fenêtre pour créer des champs spécifiques à
chaque colonne et rendre plus aisé la mise à jour.

Dans la Vue arborescente des objets, double cliquez sur le composant ADOTable1 pour faire apparaître
la fenêtre des champs. Faîtes alors glisser l'ensemble des champs sur la fiche comme dans l'illustration ci-
dessous.

L'onglet Fiche est quand même peu pratique si l'on veut naviguer d'un enregistrement à un autre. De plus, il
nous manque une fonction de création et de suppression.

Nous allons régler ce problème avec le composant DBNavigator disponible sur l'onglet Contrôle BD.
Placez le comme sur l'illustration.

N'oubliez pas de sélectionner dans la propriété DataSource, votre composant DataSource1 sinon les
boutons seront inactifs.

Et sur l'ADOX

L'ADOX est une partie supplémentaire de l'ADO (X étant l'abrégé de eXtensions). Il fournit aux
développeurs un jeu d'outils pour accéder à la structure ou à la sécurité d'une base de données. Il n'est
cependant pas fourni dans Delphi avec le jeu de composants ADO standard.

39
3. Amélioration

Nous allons maintenant procéder à quelques modifications de notre application pour qu'elle soit plus
facile d'utilisation.

L'affichage des données pour la navigation n'est pas très aisée puisqu'il s'agit du classement
par le champ Id.

Nous allons donc paramétrer le composant ADOTable1 pour qu'il extraie les données dans l'ordre
alphabétique des noms de client. Dans l'Explorateur d'objet, placez-vous sur la propriété IndexFieldNames.
Saisir dans le champ, la colonne sur laquelle on doit trier les enregistrements (pour notre exemple : Nom).

Nous allons enfin extraire la chaîne de connexion du composant ADOConnection1 pour l'inclure
directement dans le code d'ouverture de la fiche.

Faîtes un couper / coller du contenu de la propriété


ConnectionString et placez le code suivant dans la
procédure de création de la fiche.

40
Chapitre IV : Créer une application Delphi, Client/Serveur avec l’outil DCOM

Définitions

Qu'est-ce qu'un DCOM ?

Distributed Component Object Model (DCOM) est une technique propriétaire de Microsoft qui permet la
communication entre des composants logiciels distribués au sein d'un réseau informatique.

Environment)

Pour accéder aux propriétés DCOM sur un ordinateur Windows 2000, Windows XP et autres, cliquer sur
Démarrer, puis sur exécuter pour ouvrir la fenêtre commandes MS-DOS, et taper « dcomcnfg ». (Cliquer
sur Non s'il y a une boite de dialogue d'erreur qui apparaît.)

Ceci ouvre la boite de dialogue Propriétés de DCOM.

Abbreviations:

COM- Component Object Model

DCOM- Distributed Component Object Model

GUID- Globally Unique Identifier

DLL- Dynamic Link Library

LPC- Local Procedure Call

RPC- Remote Procedure Call

Exemple de composants DCOM :

41
1- Créer le serveur
2- Créer le client
3- Empaquetage du serveur
4- Empaquetage du client
5- Installer le serveur sur la machine serveur
6- Installer le client sur la machine cliente
7- Lancer l’exécution de serveur et de client.

Qu'est-ce que ODBC?

ODBC : Open DataBase Connectivity.

ODBC est un format défini par Microsoft, fonctionnant quasi exclusivement sous Windows et
permettant la communication entre des clients de bases de données et les différents fournisseurs de base
de données. (sous réserve que ceux-ci possèdent un driver ODBC, ce qui est le cas de tous les principaux
SGBD : Access, Oracle, SQL Server, Dbase, ...)

Gestionnaire ODBC pour Windows 2000, XP :

Panneau de configuration, puis Outils d'administration : Sources de données (ODBC).

Qu'est-ce qu'un DSN ?

DSN : Data Source Name (Nom de la Source de Données)

La source de données peut être de différents types : une base de données, un fichier Excel, un fichier texte,
...

Il nous faut donc définir une source de données pour permettre à ODBC de connecter notre programme
(client) à la base de données (serveur ODBC).

42

Vous aimerez peut-être aussi