Accéder au contenu principal

Articles

Affichage des articles associés au libellé Interbase

Procédure stockée

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 Syntaxe d'une procédure stockée CREATE PROCEDURE name [( param datatype [, param datatype ...])] [RETURNS ( param datatype [, param datatype ...])] AS <procedure_body>; <procedure_body...

Trigger

TRIGGER Un trigger est associé à une table ou vue et permet d'exécuter du code selon un évènement donné. Tout comme les procédures stockées, tout s'exécute sur le serveur. Le trigger n'est jamais appelé directement. C'est lorsque l'évènement auquel est associé le trigger survient, le code est alors exécuté. Le langage utilisé par la base de données peut être utilisé pour le trigger, point besoin d'être limité à du SQL. Il est donc possible d'effectuer des tâches très complexes très aisément en utilisant ce langage au lieu d'avoir à gérer de complexe et lourde requête SQL. Il est donc possible de se passer des triggers, mais un plus grand effort sera nécessaire pour parvenir au même objectif. Un trigger est exécuté sur le serveur, il n'y a donc pas de trafic réseau qui est généré telle que lors de requête SQL. Cette centralisation permet que plusieurs applications puissent y avoir accès. Si un changement doit se faire, il n'es...

Requête paramétrée

REQUÊTE PARAMÉTRÉE Les requêtes paramétrées servent à effectuer des requêtes SQL dynamiques. Le contenu de la requête peut donc varier. C'est très utile lorsque la requête dépend de la saisie d'un utilisateur venant d'un textbox, maskedit... De plus, ça permet d'économiser de la bande passante ce qui n'est pas le cas avec un dblookupbox. Dans cet exemple nous avons une table client qui contient les champs: nom, prénom, adresse, téléphone, nopermis. Après avoir tapé un numéro de permis de conduire (nopermis) l'information du client sera affichée dans la propriété SQL d'un SQLquery, ibquery... nous entrons par exemple select NOM, NOPERMIS, PRENOM from CLIENT where nopermis = :nopermis Cette requêtant étant dans la propriété SQL du ibquery. Le «:» devant nopermis signifie que c'est un paramètre. Il ne reste plus qu'à mettre la valeur du paramètre comme étant notre textbox, maskedit... J'effectue souvent cette opération soit après avoir ...

Premier programme Interbase

PREMIER PROGRAMME INTERBASE Nous allons créer une petite application qui utilisera Interbase, elle permettra de nous familiariser avec les composants de Delphi. DataModule Démarrez Interbase ensuite, démarrez Delphi, créez un nouveau projet ensuite ajoutez un datamodule Au lieu de mettre nos composants de base de donnée sur chaque forme qu'on crée, il est possible de les mettre tous sur un DataModule. On centralise nos composants, il est ainsi beaucoup plus aisé de gérer le tout. Je vous rappelle ici notre schéma de table Nous déposerons donc tous nos composants liés à notre bd sur ce DataModule. Déposons 5 DataSource, 1 ibDataBase,5 ibDataset et ibTransaction sur le DataModule. Le DataModule devrait ressembler à ceci après avoir mis tous les composants nécessaires dessus et leur avoir donnée leur nom. J'ai mis qu'une transaction pour IbdVille et IbdProvince, puisque nous allons effectuer leur transaction sur la même fiche. Le nom du DataModule est...

Composant Ibx

COMPOSANT IBX IbTable Ce composant encapsule une table dans une base de donnée. Il est souvent utilisé pour migrer plus aisément du bde à Interbase. Puisque Interbase est orienté client/serveur, les IbTable ne devraient pas être utilisé. IbQuery Ce composant permet d'exécuter des instructions SQL. On peut ainsi accéder à plusieurs tables simultanément. IBUpdateSQL Ce composant met à jours des données en lecture seule. Ce composant est utilisé conjointement avec un IbQuery ou IbDataset. Il permet d'insérer, mettre à jour, effacé et de rafraichir un ensemble de donnée qui ne peut être modifié habituellement. Ces opérations peuvent être générées automatiquement en effectuant un clique droit sur le composant. IBDataset Ce composant rassemble les caractéristiques d'un IbQuery et d'un IBUpdateSQL. Il est donc possible de récupérer des données, de mettre à jour des données, de supprimer des données et de rafraîchir des données IbSQL Ce composant per...

Intitiation à Interbase

INITIATION Avant de pouvoir effectuer ce tutoriel adéquatement, il faudra que vous ayez installé Interbase Server et le client ainsi que ibconsole sur votre ordinateur. Les composants ibx sont aussi nécessaire. J'ai utilisé Interbase 6.01 disponible gratuitement chez Borland et aussi Ibconsole disponbile au même endroit. Ibconsole Ibconsole permet de gérer et de maintenir Interbase server, il vous permet d'exécuter toutes commandes SQL. Tout se fait à l'aide d'une interface graphique fort conviviale. Histoire d'Interbase Interbase existe depuis le millieu des années 80. La fiabilité et la puissance de cette basse de donnée, ont fait sa renommée. Borland a ouvert ses sources en l'an 2000. Le serveur est disponible sous Windows, Linux et quelques Unix. Il est même possible de le faire fonctionner sous MacOS X. Peu de ressource et d'espace disque sont nécessaire au fonctionnement d'Interbase. Nokia, Motorola, Boeing... sont quelques unes des ...

Générateur dans Interbase

GÉNÉRATEUR Les générateurs sont employés afin que chaque enregistrement soit unique. Sous Paradox, le type de donnée employé pour effectuer cette opération est autoinc. Puisque Interbase est orienté client/serveur, c'est le serveur qui doit créer la valeur et non le client. Si la valeur était créée au niveau client, il deviendrait alors possible d'avoir plusieurs champs avec la même valeur. Un tel comportement doit être évité dans une architecture telle que celle d'Interbase. À chaque insertion d'une valeur dans une table un champ utilisé par un générateur sera incrémenté. Nous continuer avec l'exemple du chapitre précédent. Nous allons créer 5 générateurs, 1 par table. Création de générateur La syntaxe est CREATE GENERATOR nom générateur Dans la table client, nous avons un champ noclient, ce champ est unique à chaque client. Il ne peut donc y avoir deux valeurs identiques. Nous devons donc créer un générateur pour ce champ. Pour cette table il suffira de...