APIs de table pour SQL Server
|
|
- Fabienne Lemieux
- il y a 8 ans
- Total affichages :
Transcription
1 2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion S adresse à: M.Fabrice Camus Date de début et de fin du travail de Bachelor Dernière modification le: Date de création: Version du document: 1.0 Type de réalisation: Intra-muros
2 Sommaire 1 Introduction Avant-Projet Planification Planifié Réalisé Administration du projet Analyse des risques Technologies utilisées Convention de nommage Valeurs taguées utilisées Fonctionnement du plugin Principe de base Déclenchement du plugin Prérequis Utilisation Sélection des tables Schéma de fonctionnement L utilité concrète du plugin Avant exécution du plugin Résultat de l exécution Développement Génération des scripts d APIs de tables Génération des logs Exécution des scripts Tables de journalisation Tables de journalisation des exceptions Colonnes d audit Triggers Procédures stockées Abstraction des scripts Génération des procédures Génération du code SQL DDL Génération des triggers Paramétrage du plugin...30 Page 2 sur 42
3 7.6.1 Plugin.properties database.properties Script de déploiement Tests Tests unitaires Tests par l utilisation Gestion des erreurs Implémentation de la gestion des messages et logs Affichage de messages à l utilisateur Exceptions Ajout d un nouveau SGBDR Amélioration Récupérer une connexion de Visual Paradigm Affichage de popup Gérer les modifications incrémentales des APIs de table Revoir la séparation des fichiers de propriétés Conclusion...42 Page 3 sur 42
4 1 Introduction Ce document va présenter la démarche entreprise afin de parvenir à l aboutissement du travail. Les chapitres sont ordonnés de façon à ce que le premier corresponde à la première démarche entreprise et le dernier à la dernière démarche. Le premier chapitre présente la planification mise en place afin de réaliser ce projet ainsi qu une analyse des risques et une présentation des différentes technologies utilisées. Le deuxième chapitre présente les différentes conventions de nommage mises en place. Le suivant expose et explique les différentes valeurs taguées utilisées. Le chapitre 5 présente le fonctionnement du plugin dans son ensemble. Le sixième chapitre démontre l utilité de celuici. Le chapitre 7 présente quelques éléments concernant le développement propre du plugin. Le chapitre 8 explique la procédure d ajout d un nouveau SGBDR au sein du plugin. Le chapitre suivant présente les différentes améliorations possibles. Le dernier chapitre conclut ce projet. Page 4 sur 42
5 12 avril 19 avril 26 avril 3 mai 8 mai 17 mai 24 mai 31 mai 7 juin 21 juin 28 juin 5 juillet 2 Avant-Projet 2.1 Planification Ci-dessous, une présentation de l organisation des 12 semaines à dispositions afin de réaliser ce dit travail. Le but originel de cette planification était d organiser le travail plutôt que de déterminer que la tâche A doit être terminée en semaine 2. J ai pris la décision de ne pas utiliser de méthode de gestion de projet, à la mode, tel Agile car mon projet ne se prête que très peu à ce type d organisation. Effectivement, il m a été demandé de réaliser chaque tâche de façon complète et non incrémentale comme la méthode Agile le préconise. De plus, je suis seul sur ce projet. Je ne vois donc que très peu l intérêt d utiliser une telle méthode. Tout du moins, une organisation se basant sur des itérations a été utilisée. À la fin de chacune de celle-ci, il a été décidé, conjointement avec mon directeur de travail, de livrer le plugin. 2.2 Planifié Tâche Rédaction de la demande de ratification Analyse du plugin Itération 1 Itération 2 Itération 3 Itération 4 Rédaction des rapports Test global Page 5 sur 42
6 12 avril 19 avril 26 avril 3 mai 8 mai 17 mai 24 mai 31 mai 7 juin 21 juin 28 juin 5 juillet 2.3 Réalisé Tâche Rédaction de la demande de ratification Analyse du plugin Itération Itération 2 Itération 3 1 Itération 4 Rédaction des rapports Test global 1. Retard dû à l analyse de l architecture à mettre en place. Effectivement, initialement, il était prévu que je complète le plugin «Génération des APIs de table pour Oracle», malheureusement, après analyse, il s est avéré que cette tâche demandait trop d adaptation. Page 6 sur 42
7 2.4 Administration du projet Dans l optique d assurer un suivi efficace, le directeur de travail m a convié à mettre en place les éléments d administration de projet suivant: Hebdomadairement une séance est organisée avec mon directeur de Bachelor et de l assistant. Un rapport, également hebdomadaire, doit être réalisé afin de présenter le déroulement de la semaine, les éventuels problèmes ainsi que le déroulement de la semaine à venir. Ce rapport hebdomadaire de travail doit être envoyé en fin de semaine par émail à mon directeur de Bachelor. Cette gestion apporte, pour le candidat, l avantage d être immédiatement redirigé en cas de problème. D un autre côté, le directeur de travail, qui est également le représentant du mandat dans mon cas, peut s assurer que le produit qu il attend réponde au mieux à ses besoins. Bien entendu, l inconvénient de la mise en place de cette administration réside dans le temps dépensé par les deux parties, autant pour la préparation des documents à envoyer que pour la lecture de ceux-ci. Au final, chacun y trouve son compte. Page 7 sur 42
8 2.5 Analyse des risques Le but de ce chapitre est de présenter les différents risques pouvant entraver le bon déroulement de ce projet. L analyse suivante vise essentiellement à identifier les risques et non pas à la mise en œuvre de mesures permettant de les réduire. Ci-dessous, une identification des différents risques: 1. Impossibilité d accéder à certains éléments du référentiel. Effectivement, il est possible que l API Java fourni par Visual Paradigm ne permette pas l accès à certains éléments(s). Ceci entraverait voir rendrait impossible la réalisation du plugin. Cependant ce risque est actuellement très réduit, car d utilise les mêmes méthodes que le plugin «Génération des APIs de table pour Oracle». 2. Impossibilité de reproduire les fonctionnalités du plugin «Génération des APIs de tables pour Oracle» dû au langage Transact SQL. Effectivement, il se peut que le langage Transact SQL ne puisse offrir les mêmes possibilités que le langage PLSQL. La réalisation, au préalable, des APIs à la main, a rendu ce risque inexistant. 3. Manque fonctionnel dû à une erreur d analyse du plugin de «Génération des APIs de tables pour Oracle». Il se peut que lors de l analyse du plugin «Génération des APIs de table pour Oracle», des fonctionnalités aient été oubliées. 4. Une mise à jour de Visual Paradigm changeant profondément le fonctionnement de l Open API. Un risque pour pourrait mettre fin à l utilisation de plugin est que Visual Paradigm décide, comme Oracle l ont fait avec l outil Designer, d arrêter le maintien de l Open API. Page 8 sur 42
9 La matrice ci-dessous présente les risques en fonction de leur gravité et de leur vraisemblance. Elle se base sur les recommandations EBIOS. Le placement ayant été fait au début de ce projet. Page 9 sur 42
10 2.6 Technologies utilisées Ci-dessous une liste et un petit descriptif des différentes technologies utilisées. Il est également précisé les différentes versions des logiciels/technologies utilisées afin d éviter les problèmes d incompatibilités. NetBeans IDE (Build ) Java JDK 1.7.0_25 Java SE Runtime Environment 1.6.0_35-b10 Microsoft SQL Server 2008 R (Microsoft SQL Server Developer Edition) Visual Paradigm for UML Enterprise Edition (Build ) Page 10 sur 42
11 3 Convention de nommage Les conventions de nommage permettent de faciliter la compréhension des éléments ainsi que garder une unité au travers des différents documents/codes. J ai donc défini les éléments suivants: Concerne Détail Abréviation Trigger INSTEAD OF IOF Trigger AFTER AFTER Trigger Déclenchement avant PRE Trigger Déclenchement après POST Trigger Déclenchement pour chaque ligne ROW Trigger Déclenchement pour une ligne STMT Trigger Insert INS Trigger Update UPD Trigger Delete DEL Procédure Journal JN Il suffit de combiner ces différents éléments pour créer le nom des éléments que j ai utilisé. Exemple: Trigger INSTEAD OF UPDATE FOR EACH ROW = IOF_UPD_ROW Trigger AFTER DELETE = AFTER_DEL_STMT Page 11 sur 42
12 4 Valeurs taguées utilisées Les valeurs taguées permettent d indiquer au plugin les éléments à générer. Elles sont propres à chaque table. Voici une liste les décrivant: Valeurs taguées PRE_INS POST_INS PRE_UPD POST_UPD PRE_DEL POST_DEL JOURNAL CTRLAJUSER CTRLAJDATE CTRLMOUSER CTRLMODATE PROCEDURE PRE_BEFORE_INS_ROW PRE_BEFORE_INS_STMT PRE_BEFORE_UPD_ROW Explications avant chaque requête d insertion de données dans la base. après chaque requête d insertion de données dans la base. avant chaque requête de modification de données dans la base. après chaque requête de modification de données dans la base. avant chaque requête de suppression de données dans la base. après chaque requête de suppression de données dans la base. Permet de générer le mécanisme de journalisation des manipulations des données. Permet d ajouter la colonne CTRLAJUSER d information d audit de manipulation des enregistrements. Permet d ajouter la colonne CTRLAJDATE d information d audit de manipulation des enregistrements. Permet d ajouter la colonne CTRLMOUSER d information d audit de manipulation des enregistrements. Permet d ajouter la colonne CTRLMODATE d information d audit de manipulation des enregistrements. Permet d ajouter une procédure stockée personnalisée. avant une requête d insertion du trigger INSTEAD OF INSERT FOR EACH ROW. avant une requête d insertion du trigger INSTEAD OF INSERT STMT. avant une requête de mise à jour des données du trigger INSTEAD OF UPDATE FOR EACH ROW. Page 12 sur 42
13 PRE_BEFORE_UPD_STMT PRE_BEFORE_DEL_ROW PRE_BEFORE_DEL_STMT PRE_AFTER_INS_ROW PRE_AFTER_INS_STMT PRE_AFTER_UPD_ROW PRE_AFTER_UPD_STMT PRE_AFTER_DEL_ROW PRE_AFTER_DEL_STMT POST_BEFORE_INS_ROW POST_BEFORE_INS_STMT POST_BEFORE_UPD_ROW avant une requête de mise à jour des données du trigger INSTEAD OF UPDATE STMT. avant une requête de suppression de données du trigger INSTEAD OF DELETE FOR EACH ROW. avant une requête de suppression de données du trigger INSTEAD OF DELETE STMT. avant une requête d insertion du trigger AFTER INSERT FOR EACH ROW. avant une requête d insertion du trigger AFTER INSERT STMT. avant une requête de mise à jour des données du trigger AFTER UPDATE FOR EACH ROW. avant une requête de mise à jour des données du trigger AFTER UPDATE STMT. avant une requête de suppression de données du trigger AFTER DELETE FOR EACH ROW. avant une requête de suppression de données du trigger AFTER DELETE STMT. après une requête d insertion du trigger INSTEAD OF INSERT FOR EACH ROW. après une requête d insertion du trigger INSTEAD OF INSERT STMT. après une requête de mise à jour des données du trigger INSTEAD OF UPDATE FOR EACH ROW. POST_BEFORE_UPD_STMT après une requête de mise à jour des données du trigger INSTEAD OF UPDATE STMT. POST_BEFORE_DEL_ROW POST_BEFORE_DEL_STMT après une requête de suppression de données du trigger INSTEAD OF DELETE FOR EACH ROW. Page 13 sur 42
14 après une requête de suppression de données du trigger INSTEAD OF DELETE STMT. POST_AFTER_INS_ROW POST_AFTER_INS_STMT POST_AFTER_UPD_ROW POST_AFTER_UPD_STMT POST_AFTER_DEL_ROW POST_AFTER_DEL_STMT après une requête d insertion du trigger AFTER INSERT FOR EACH ROW. après une requête d insertion du trigger AFTER INSERT STMT. après une requête de mise à jour des données du trigger AFTER UPDATE FOR EACH ROW. après une requête de mise à jour des données du trigger AFTER UPDATE STMT. après une requête de suppression de données du trigger AFTER DELETE FOR EACH ROW. après une requête de suppression de données du trigger AFTER DELETE STMT. Page 14 sur 42
15 5 Fonctionnement du plugin 5.1 Principe de base L objectif de ce chapitre est de présenter les principes de base sur lesquels repose ce plugin. Il m a été expressément de développé un plugin pour Visual Paradigm et pour le SGBDR SQL Server. C est pourquoi aucune analyse n a été faite concernant le choix technologique. Effectivement, Visual Paradigm offre uniquement une API écrite en Java et SQL Server offre un langage de manipulation de ces objets: le Transact SQL. Les fonctionnalités qui ont été développées sont celles présentées dans le document théorique. Page 15 sur 42
16 5.2 Déclenchement du plugin Prérequis Quelques règles sont à appliquer afin de pouvoir générer les APIs de table: Avoir défini au moins un modèle dans le projet Visual Paradigm et le nommer «Model». Avoir une clé primaire par table. Avoir au moins une table marquée par le stéréotype «MLD». Avoir au moins une colonne par table. Ces contraintes ont été fixées, car elles représentent le seuil minimum d informations nécessaire au bon fonctionnement du plugin Utilisation Le plugin se déclenche de deux manières. La première consiste à utiliser l icône dans la barre des raccourcis. La deuxième est de passer par le menu. Page 16 sur 42
17 5.2.3 Sélection des tables Le stéréotype «MLD» permet de sélectionner uniquement les tables dont nous voulons générer les APIs de table. Voici comment ajouter ce stéréotype : Page 17 sur 42
18 5.2.4 Schéma de fonctionnement Ci-dessous un schéma représentant le fonctionnement global des APIs de tables.
19 6 L utilité concrète du plugin L utilité du projet a déjà été partiellement expliquée dans le document d introduction. Ce chapitre va donc uniquement illustrer son utilisation. 6.1 Avant exécution du plugin Voici les tables qui me serviront d exemple. Voici les valeurs targuées de la table «Employes». Voici les valeurs targuées de la table «Departements» Page 19 sur 42
20 6.2 Résultat de l exécution Voici le résultat après exécution du plugin. Comme vous pouvez le remarquer, les colonnes de valeurs d informations d audit de manipulation des enregistrements ont été ajoutées en fonction des valeurs taguées. Voici les différentes tables présentes après exécution du plugin. Vous pouvez remarquer, la table de journalisation de la table Employes, est apparue ainsi que les deux tables de journalisation des exceptions. Voici les différentes procédures stockées. Les 3 procédures de journalisation des exceptions ont bien été créées ainsi que la procédure de journalisation de la table «Employes». Page 20 sur 42
21 Lors d une insertion d un département : INSERT INTO [AGL_RH].[dbo].[Departements] ([Code],[Libelle]) VALUES ('Inf','Informatique') GO Voici le résultat : Page 21 sur 42
22 Lors d une insertion d un employé : INSERT INTO [AGL_RH].[dbo].[Employes] ([DEP_Numero],[Mnemo],[Nom],[Prenom],[RueNo],[CodePostal],[Localite]) VALUES (1,'as','Senft','Arnaud','Docteur Tièche 5A','2732','Reconvilier') GO Table «Employes»: Table de journalisation de l employé : Page 22 sur 42
23 Mise à jour de cet employé : UPDATE [AGL_RH].[dbo].[Employes] SET [Mnemo] = 'sa' WHERE Numero = 1 GO Table «Employes» Table de journalisation de l employé : Page 23 sur 42
24 Suppression de cet employé : DELETE FROM [AGL_RH].[dbo].[Employes] WHERE Numero = 1 GO Table «Employes» vide : Table de journalisation : Page 24 sur 42
25 7 Développement 7.1 Génération des scripts d APIs de tables Trois scripts sont générés lors de l exécution du plugin. Le premier (PROC_DDL_SCRIPT) regroupe toutes les procédures stockées à créer : Procédure de journalisation. Procédure de journalisation des exceptions. Le deuxième (SQL_DDL_SCRIPT) regroupe tous les scripts de définition des données dont : Ajout de champs d audit. Création de la table de journalisation. Création des tables de journalisation des exceptions. Le dernier (TRIGGER_DDL_SCRIPT) regroupe les différents triggers à créer. 7.2 Génération des logs Le dossier logs contient tous les logs, par jour, des exceptions levées lors du déclenchement du plugin. Voici un exemple de log : EXCEPTION IN CLASS 'ch.hearc.ig.generationapistablesqlserver.presentation.action.actioncontroller' : Exception: ch.hearc.ig.generationapistablesqlserver.exceptions.nostereotypeexception Message: Il n y a pas de stéréotype MLD Date: /09:29:18 Les logs contiennent donc la classe d où qui a généré l exception, l exception, le message et la date. Page 25 sur 42
26 7.3 Exécution des scripts Tables de journalisation Voici comment se présente les différentes tables de journalisation générées dans SQL Server : Tables de journalisation des exceptions Voici comment se présentent les tables de journalisation des erreurs générées: Colonnes d audit Voici comment se présentent les colonnes d audit générées: Page 26 sur 42
27 7.3.4 Triggers Voici comment se présentes les triggers générés: Procédures stockées Voici les différentes procédures stockées générées : Page 27 sur 42
28 7.5 Abstraction des scripts Le but est de s abstraire au maximum du SGBDR utilisé afin de réimplémenter le minimum d éléments lors de l ajout d un nouveau SGBDR Génération des procédures Étant donné que le but est de s abstraire au maximum du SGBDR utilisé sans pour autant rendre le plugin bloquant, une classe abstraite contenant les éléments «réutilisable» et indépendante du SGBDR a été créée. Cette classe a notamment le rôle de vérifier les valeurs taguées. Effectivement, celles-ci sont indépendantes du SGBDR utilisé. Ainsi pas besoin de réimplémenter ces tests lors de l ajout d un SGBDR. La définition des méthodes de génération des procédures est également un élément indépendant du SGBDR Génération du code SQL DDL Une classe abstraite contenant les éléments communs pour chaque SGBDR a également été créée pour les codes SQL DDL. Ces éléments communs sont les mêmes que pour les procédures. C est-à-dire, le test des valeurs taguées ainsi que la définition des méthodes de générations des codes SQL DDL. Page 28 sur 42
29 7.5.3 Génération des triggers Concernant la génération du code des triggers, très peu d éléments sont communs entre chaque SGBDR. Une classe abstraite est quand même présente, mais ne comprend que peu d éléments. Page 29 sur 42
30 7.6 Paramétrage du plugin Plugin.properties Ce fichier de configuration du plugin permet de modifier les différents éléments générés. J ai pris la décision de centraliser et d externaliser ces éléments afin de : Ne pas devoir recompiler le plugin lors d une modification dans le fichier. Centraliser l ensemble des éléments susceptible de changer. Ainsi ce fichier regroupe, en un seul endroit, des propriétés ayant potentiellement un risque de changer. Permet de définir le nom du projet : PROJECT.NAME=GenerationAPIsTableSQLServer Permet de définir la version du projet : PLUGIN.VERSION=0.0.0 Permet de définir la date de la version : PLUGIN.VERSIONDATE= Permet de définir le répertoire de Visual Paradigm qui contient les plugins : VP.PLUGINPATH=C:/Program Files (x86)/visual Paradigm for UML 10.1/plugins Permet de définir le nom du dossier des fichiers logs, le nom des fichiers et le niveau des logs : LOGSMANAGER.LOG_FOLDER=logs LOGSMANAGER.LOG_FILENAME_FORMAT=yyyy-MM-dd LOGSMANAGER.WARNING_LEVEL_TO_LOG=INFO Permet de définir le niveau des messages à afficher: MESSAGEMANAGER.WARNING_LEVEL_TO_SHOW=INFO Permet de définir le nom des Tagged Values à récupérer: TAGGEDVALUES.PRE_INS=PRE-INS TAGGEDVALUES.POST_INS=POST-INS TAGGEDVALUES.PRE_UPD=PRE-UPD TAGGEDVALUES.POST_UPD=POST-UDP TAGGEDVALUES.PRE_DEL=PRE-DEL TAGGEDVALUES.POST_DEL=POST-DEL TAGGEDVALUES.JOURNAL=JOURNAL TAGGEDVALUES.CTRLAJUSER=CTRLAJUSER TAGGEDVALUES.CTRLAJDATE=CTRLAJDATE TAGGEDVALUES.CTRLMOUSER=CTRLMOUSER TAGGEDVALUES.CTRLMODATE=CTRLMODATE TAGGEDVALUES.PROCEDURE=PROCEDURE TAGGEDVALUES.PRE_IOF_INS_ROW=PRE_IOF_INS_ROW TAGGEDVALUES.PRE_IOF_INS_STMT=PRE_IOF_INS_STMT TAGGEDVALUES.PRE_IOF_UPD_ROW=PRE_IOF_UPD_ROW TAGGEDVALUES.PRE_IOF_UPD_STMT=PRE_IOF_UPD_STMT TAGGEDVALUES.PRE_IOF_DEL_ROW=PRE_IOF_DEL_ROW TAGGEDVALUES.PRE_IOF_DEL_STMT=PRE_IOF_DEL_STMT TAGGEDVALUES.PRE_AFTER_INS_ROW=PRE_AFTER_INS_ROW TAGGEDVALUES.PRE_AFTER_INS_STMT=PRE_AFTER_INS_STMT TAGGEDVALUES.PRE_AFTER_UPD_ROW=PRE_AFTER_UPD_ROW TAGGEDVALUES.PRE_AFTER_UPD_STMT=PRE_AFTER_UPD_STMT TAGGEDVALUES.PRE_AFTER_DEL_ROW=PRE_AFTER_DEL_ROW TAGGEDVALUES.PRE_AFTER_DEL_STMT=PRE_AFTER_DEL_STMT Page 30 sur 42
31 TAGGEDVALUES.POST_IOF_INS_ROW=POST_IOF_INS_ROW TAGGEDVALUES.POST_IOF_INS_STMT=POST_IOF_INS_STMT TAGGEDVALUES.POST_IOF_UPD_ROW=POST_IOF_UPD_ROW TAGGEDVALUES.POST_IOF_UPD_STMT=POST_IOF_UPD_STMT TAGGEDVALUES.POST_IOF_DEL_ROW=POST_IOF_DEL_ROW TAGGEDVALUES.POST_IOF_DEL_STMT=POST_IOF_DEL_STMT TAGGEDVALUES.POST_AFTER_INS_ROW=POST_AFTER_INS_ROW TAGGEDVALUES.POST_AFTER_INS_STMT=POST_AFTER_INS_STMT TAGGEDVALUES.POST_AFTER_UPD_ROW=POST_AFTER_UPD_ROW TAGGEDVALUES.POST_AFTER_UPD_STMT=POST_AFTER_UPD_STMT TAGGEDVALUES.POST_AFTER_DEL_ROW=POST_AFTER_DEL_ROW TAGGEDVALUES.POST_AFTER_DEL_STMT=POST_AFTER_DEL_STMT Permet de définir le nom des triggers: TRIGGER.IOF_INS_ROW_NAME=IOF_INS_ROW TRIGGER.IOF_INS_STMT_NAME=IOF_INS_STMT TRIGGER.IOF_UPD_ROW_NAME=IOF_UPD_ROW TRIGGER.IOF_UPD_STMT_NAME=IOF_UPD_STMT TRIGGER.IOF_DEL_ROW_NAME=IOF_DEL_ROW TRIGGER.IOF_DEL_STMT_NAME=IOF_DEL_STMT TRIGGER.AFTER_INS_ROW_NAME=AFTER_INS_ROW TRIGGER.AFTER_INS_STMT_NAME=AFTER_INS_STMT TRIGGER.AFTER_UPD_ROW_NAME=AFTER_UPD_ROW TRIGGER.AFTER_UPD_STMT_NAME=AFTER_UPD_STMT TRIGGER.AFTER_DEL_ROW_NAME=AFTER_DEL_ROW TRIGGER.AFTER_DEL_STMT_NAME=AFTER_DEL_STMT Permet de définir le nom du stéréotype MLD: STEREOTYPE.SCHEMA_TO_TRANSFORM=MLD Permet de définir le nom des tables ou de leur extension : TABLE.DDL_EXCEPTION_JOURNAL_NAME=ERRORS_JN TABLE.DDL_EXCEPTION_TRACE_JOURNAL_NAME=ERRORS_JN_CALLS TABLE.DDL_JOURNAL_EXT_NAME=_JN Permet de définir le nom du dossier contenant les scripts et le nom de ceux-ci : SCRIPTS.FOLDER_NAME=scripts_apis SCRIPTS.SQL_DDL_SCRIPT=SQL_DDL_SCRIPT SCRIPTS.PROC_DDL_SCRIPT=PROC_DDL_SCRIPT SCRIPTS.TRIGGER_DDL_SCRIPT=TRIGGER_DDL_SCRIPT Permet de définir le nom des procedures: PROCEDURE.ERR_PROCESS=ERR_PROCESS PROCEDURE.ERR_SAVE_NEW=ERR_SAVE_NEW PROCEDURE.ERR_SAVE_CALL=ERR_SAVE_CALL PROCEDURE.JOURNAL_PREFIXE=ins_jn_ Page 31 sur 42
32 7.6.2 database.properties Ce fichier regroupe les différentes propriétés concernant la base de données. Permet d indiquer la base de données désirée : SGBDR=SQL_Server Permet de configurer les paramètres de connexion à la base de données : DB_URL=jdbc:sqlserver://AGL-SENFTA:1433;DatabaseName=AGL_RH DB_USERNAME=AGL_USER DB_PWD=AGL_USER Page 32 sur 42
33 7.7 Script de déploiement Voici le script ANT (build-vp.xml) qui a été utilisé afin de déployer automatiquement le projet dans le dossier «plugin» de Visual Paradigm. <?xml version="1.0"?> <project name="compileandcopytovp" default="doall"> </project> <property file="plugin.properties" /> <!-- Define folders --> <property name="srcpath" location="src" /> <property name="buildpath" location="classes" /> <!-- Run all targets --> <target name="doall"> </target> <echo message="starting Ant script" level="info" /> <antcall target="copytovp" /> <echo message="end Ant script" level="info" /> <!-- Deploy to Visual Paradigm --> <target name="copytovp"> </target> <echo message="deploying to VP plugins folder..." level="info" /> <delete dir="${vp.pluginspath}/${project.deployedfolder}" /> <mkdir dir="${vp.pluginspath}/${project.deployedfolder}"/> <copy todir="${vp.pluginspath}/${project.deployedfolder}/"> </copy> <fileset dir="." excludes="**/.project, **/.classpath, **/build.xml, **/build-vp.xml, **/manifest.mf, **/src/, **/.settings/, **/.externaltoolbuilders/, nbproject/" /> <mkdir dir="${vp.pluginspath}/${project.deployedfolder}/classes"/> <copy todir="${vp.pluginspath}/${project.deployedfolder}/classes"> </copy> <fileset dir="./build/classes"/> <delete dir="${vp.pluginspath}/${project.deployedfolder}/build"/> Si vous utilisez NetBeans, il faut ensuite importer ce fichier dans le script ANT build.xml. <import file="build-vp.xml"/> Puis indiquer au script build.xml quand le script buid-vp.xml doit être déclenché. <target name="-post-compile"> <antcall target="doall"/> </target> Le script doit être appelé après compilation. Page 33 sur 42
34 7.8 Tests Tests unitaires Malheureusement, aucun test unitaire n a pu être réalisé. Effectivement, s agissant d un plugin, il n est pas possible de tester l application du faite de la très forte liaison entre le plugin et Visual Paradigm Tests par l utilisation Du fait de la nécessité d avoir un référentiel complet ainsi que l environnement pour effectuer des tests, je suis très vite arrivé à la conclusion que je devais créer un deuxième projet me permettant d effectuer différents tests. Voici la procédure mise en place afin d effectuer ces tests : Page 34 sur 42
35 7.9 Gestion des erreurs Implémentation de la gestion des messages et logs Après avoir rapidement jeté un œil aux travaux effectués l année précédente, je me suis rapidement rendu compte que le travail [DOC-STB-02] traitait déjà de cette problématique. Tout au long de mon cursus, nous avons appris à créer des éléments réutilisables. Connaissant la qualité du travail effectué par ce Bachelier et après avoir confirmé ceci par ma propre étude, j ai consciemment pris la décision de réutiliser ces différents éléments. Les chapitres ci-dessous reprennent ces différents éléments et expliquent leurs fonctionnements Affichage de messages à l utilisateur Fenêtre message L Open API de Visual Paradigm offre la possibilité d envoyer des messages à l utilisateur au travers de la console que l on aperçoit ci-dessous : Pour ce faire, il est nécessaire de faire appel à l élément ViewManage du plugin : ViewManager viewmanager = ApplicationManager.instance().getViewManager(); L objet instancié offre plusieurs méthodes permettant d afficher des messages. La méthode la plus utilisée est : viewmanager.showmessage(string message); Page 35 sur 42
36 Il est également possible de communiquer avec l utilisateur grâce au framework SWING et AWT. Je n ai pas utilisé ces frameworks pour ce projet, car ceci n était simplement pas le but de celui-ci. Voici un extrait de la documentation officielle de Visual Paradigm qui soutient mes dires [VP-WEB-01]: Exceptions Voici la description des différentes exceptions mise en place au sein du plugin. Exception Raison Comment la résoudre ConnexionException Vérifier les données de connexion dans le fichier database.properties. FileException NoColumnException Aucune colonne n existe dans une table. Vérifier le chemin d écriture indiqué dans le fichier plugin.properties. Vérifier qu aucune table sans colonne n est présente dans le modèle. NoPkException Pas de clé primaire dans une table. Ajouter une clé primaire à la table. NoRessourceFoundException La ressource n a pas été trouvée. NoStereotypeException Aucune table avec le stéréotype MLD n est présente. Vérifier le nom de la ressource indiquée. Ajouter le stéréotype MLD aux tables voulues. NoTableException Aucune table n est présente dans le MLD. PersistException DatabaseNotSupported La base de données indiquée n est pas reconnue. Vérifier le nom de la base de données entrée dans le fichier Database.properties et que les tests permettant de déterminer la base de données sélectionnée soient correct. Page 36 sur 42
37 8 Ajout d un nouveau SGBDR Ci-dessous les étapes permettant l extension du plugin à d autres SGBDR. 1. Ajouter l importation de la librairie de connexion à la base de données au dossier Lib du projet. 2. Indiquer au plugin, au travers du fichier plugin.xml, où se trouve la nouvelle librairie à importer. 3. Étendre la classe AbsFactory pour votre SGBDR. Il faut récupérer les valeurs taguées suivantes et en créer une représentation correspondant à ce qui existe dans le SGBDR ajouté (tableau repris du chapitre «Valeurs taguées utilisées). Valeurs taguées PROCEDURE PRE_BEFORE_INS_ROW PRE_BEFORE_INS_STMT PRE_BEFORE_UPD_ROW PRE_BEFORE_UPD_STMT PRE_BEFORE_DEL_ROW PRE_BEFORE_DEL_STMT PRE_AFTER_INS_ROW PRE_AFTER_INS_STMT PRE_AFTER_UPD_ROW PRE_AFTER_UPD_STMT Explications Permet d ajouter une procédure stockée personnalisée. avant une requête d insertion du trigger INSTEAD OF INSERT FOR EACH ROW. avant une requête d insertion du trigger INSTEAD OF INSERT STMT. avant une requête de mise à jour des données du trigger INSTEAD OF UPDATE FOR EACH ROW. avant une requête de mise à jour des données du trigger INSTEAD OF UPDATE STMT. avant une requête de suppression de données du trigger INSTEAD OF DELETE FOR EACH ROW. avant une requête de suppression de données du trigger INSTEAD OF DELETE STMT. avant une requête d insertion du trigger AFTER INSERT FOR EACH ROW. avant une requête d insertion du trigger AFTER INSERT STMT. avant une requête de mise à jour des données du trigger AFTER UPDATE FOR EACH ROW. Page 37 sur 42
38 avant une requête de mise à jour des données du trigger AFTER UPDATE STMT. PRE_AFTER_DEL_ROW PRE_AFTER_DEL_STMT POST_BEFORE_INS_ROW POST_BEFORE_INS_STMT POST_BEFORE_UPD_ROW avant une requête de suppression de données du trigger AFTER DELETE FOR EACH ROW. avant une requête de suppression de données du trigger AFTER DELETE STMT. après une requête d insertion du trigger INSTEAD OF INSERT FOR EACH ROW. après une requête d insertion du trigger INSTEAD OF INSERT STMT. après une requête de mise à jour des données du trigger INSTEAD OF UPDATE FOR EACH ROW. POST_BEFORE_UPD_STMT après une requête de mise à jour des données du trigger INSTEAD OF UPDATE STMT. POST_BEFORE_DEL_ROW POST_BEFORE_DEL_STMT POST_AFTER_INS_ROW POST_AFTER_INS_STMT POST_AFTER_UPD_ROW POST_AFTER_UPD_STMT POST_AFTER_DEL_ROW POST_AFTER_DEL_STMT après une requête de suppression de données du trigger INSTEAD OF DELETE FOR EACH ROW. après une requête de suppression de données du trigger INSTEAD OF DELETE STMT. après une requête d insertion du trigger AFTER INSERT FOR EACH ROW. après une requête d insertion du trigger AFTER INSERT STMT. après une requête de mise à jour des données du trigger AFTER UPDATE FOR EACH ROW. après une requête de mise à jour des données du trigger AFTER UPDATE STMT. après une requête de suppression de données du trigger AFTER DELETE FOR EACH ROW. après une requête de suppression de données du trigger Page 38 sur 42
APIs de table pour SQL Server
2013 E - Bibliographie APIs de table pour SQL Server Établissement: HEG Arc - Haute école Arc - Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détail1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7
Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application
Plus en détailQu est ce que Visual Guard. Authentification Vérifier l identité d un utilisateur
Qu est ce que Visual Guard Authentification Vérifier l identité d un utilisateur Autorisation Qu est-ce qu un utilisateur peut faire dans l application Audits et rapports Fonctionnalités d Audit et de
Plus en détailVisual Paradigm Contraintes inter-associations
Visual Paradigm Contraintes inter-associations Travail de Bachelor d'informaticien de gestion Partie C Présentation de Visual Paradigm 1 Présentation de Visual Paradigm For UML L objet du travail de Bachelor
Plus en détailLes Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.
Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger
Plus en détailSYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8
SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,
Plus en détailLangage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailPROJET 1 : BASE DE DONNÉES REPARTIES
PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailCQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD) ----------------------------------------------------------------------------------------------------
ORGANISME REFERENCE STAGE : 26587 20 rue de l Arcade 75 008 PARIS CONTACT Couverture : M. Frédéric DIOLEZ Paris, Lyon, Bordeaux, Rouen, Toulouse, Marseille, Tél. : 09 88 66 17 40 Strasbourg, Nantes, Lille,
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailPostgreSQL, le cœur d un système critique
PostgreSQL, le cœur d un système critique Jean-Christophe Arnu PostgreSQLFr Rencontres Mondiales du Logiciel Libre 2005 2005-07-06 Licence Creative Commons Paternité - Pas d utilisation commerciale - Partage
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailVotre premier projet Android
3 Votre premier projet Android Maintenant que le SDK Android est installé, il est temps de créer votre premier projet. La bonne nouvelle est qu il n exige aucune ligne de code les outils Android créent
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailGestion de stock pour un magasin
Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire
Plus en détailDocumentation de conception
Documentation de conception La présente documentation précise les choix de modélisation, détaille les fonctionnalités (en sus de la documentation utilisateur), documente la conception de la base de donnes
Plus en détailData Tier Application avec SQL Server 2008 R2
Data Tier Application avec SQL Server 2008 R2 Article par David BARBARIN (MVP SQL Server) David BARBARIN est actuellement consultant en bases de données pour une entreprise Suisse GOLD Partner Microsoft
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailS T L - C P S - L e s p l u g i n s E c l i p s e. - Une Introduction - 2007, Frédéric Peschanski
S T L - C P S - L e s p l u g i n s E c l i p s e - Une Introduction - 2007, Frédéric Peschanski L a p l a t e f o r m e E c l i p s e Aperçu de la plateforme Eclipse Runtime Composants OSGI Equinoxe Plugins
Plus en détailet Groupe Eyrolles, 2006, ISBN : 2-212-11747-7
Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailPG208, Projet n 3 : Serveur HTTP évolué
PG208, Projet n 3 : Serveur HTTP évolué Bertrand LE GAL, Serge BOUTER et Clément VUCHENER Filière électronique 2 eme année - Année universitaire 2011-2012 1 Introduction 1.1 Objectif du projet L objectif
Plus en détailIntroduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza
Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza Avant de commencer à travailler avec le produit, il est nécessaire de comprendre, à un haut niveau, les problèmes en réponse desquels l outil a été
Plus en détailMercredi 15 Janvier 2014
De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est
Plus en détailCréer un rapport pour Reporting Services
Créer un rapport pour Reporting Services Comment créer des rapports pour SSRS Maintenant que nous avons vu que la version de SQL Server 2005 Express Edition with Advanced Services intègre SQL Server Reporting
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détail< Atelier 1 /> Démarrer une application web
MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE
Plus en détailProgramme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers
Programme détaillé Objectifs de la formation Les systèmes de gestion de bases de données prennent aujourd'hui une importance considérable au regard des données qu'ils hébergent. Véritable épine dorsale
Plus en détailWindows Server 2008 R2
Installation de SQL Server 2008 R2 Express Bouron Dimitri 31/01/2015 Ce document sert de démonstration concise pour l installation et quelques bonnes pratiques pour un Windows SQL Server 2008 R2 Express.
Plus en détailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailGénérer du code à partir d une description de haut niveau
Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,
Plus en détailCQP Développeur Nouvelles Technologies (DNT)
ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,
Plus en détailPartie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle
Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre
Plus en détailDévelopper des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David
Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server Sébastien Boutard Thomas David Le plan de la présentation Petit retour sur les environnements de développement ArcGIS Server
Plus en détailDéveloppement de base de données Microsoft SQL Server 2012. Durée : 5 jours Référence : DPSQL12. Contenu
Développement de base de données Microsoft SQL Server 2012 Durée : 5 jours Référence : DPSQL12 Cette formation permet aux participants de maîtriser les fonctionnalités de Microsoft SQL Server 2012 telles
Plus en détailManuel d utilisation du Guichet électronique V2
Service Informatique (D443) Equipe du Guichet Manuel d utilisation du Guichet Version 1.0 Alpha 0 du 18/02/2011 Classification : Peu sensible Objet : Ce document est un manuel d utilisation du portail
Plus en détailModélisation et Gestion des bases de données avec mysql workbench
Modélisation et Gestion des bases de données avec mysql workbench par novembre 2011 Table des matières 1 Installation 3 1.1 Ecran de chargement 3 1.2 Page d accueil 3 2 Réalisation d une base de données
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailTable des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
Plus en détailINF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude
INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailRestaurer des données
Restaurer des données Pré-requis à cette présentation La lecture de ce guide suppose que vous avez installé l agent SFR Backup sur l équipement que vous souhaitez sauvegarder. Il est également nécessaire
Plus en détailCursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement
Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons
Plus en détailD une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.
PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailTutorial sur SQL Server 2000
Tutorial sur SQL Server 2000 Système d'exploitation est 2000 pro et Serveur 2000 Sommaire 1 - Installation... 2 2 - Mise à jour... 5 3 - Présentation... 7 3-1 - Service Manager (Démarrer/Programmes/Microsoft
Plus en détailTUTORIEL Qualit Eval. Introduction :
TUTORIEL Qualit Eval Introduction : Qualit Eval est à la fois un logiciel et un référentiel d évaluation de la qualité des prestations en établissements pour Personnes Agées. Notre outil a été spécifiquement
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailInformation utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/
Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Plus en détailMicrosoft OSQL OSQL ou l'outil de base pour gérer SQL Server
Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server Suite à mon précédent article concernant MSDE, je me suis rendu compte à partir des commentaires que de nombreux utilisateurs avaient des problèmes
Plus en détailProcédure d'installation complète de Click&Decide sur un serveur
Procédure d'installation complète de Click&Decide sur un serveur Prérequis du serveur : Windows 2008 R2 or greater (64-bits) Windows 2012 (64-bits) - Le composant IIS (Internet Information Services) de
Plus en détailLes déclencheurs. Version 1.0. Grégory CASANOVA
Les déclencheurs Version 1.0 Grégory CASANOVA 2 Les déclencheurs [09/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les déclencheurs du DML... 5 3.1 Introduction... 5 3.2 Création d un déclencheur
Plus en détailCahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES
Antonin AILLET Remi DEVES Thibaut AZZOPARDI 2 ème année de DUT Informatique Cahier Technique «Développer une application intranet pour la gestion des stages des étudiants» Encadré par Didier BOULLE Année
Plus en détailLa réplication sous SQL Server 2005
La réplication sous SQL Server 2005 Mettre en place la réplication sur SQL Server 2005 La réplication des bases de données est une problématique classique dans les systèmes d'information. En effet, dans
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détail1.2 Genèse. 1.3 Version de Designer utilisée
Designer et l ingénierie du logiciel Notions élémentaires P.-A. Sunier, ISNet Neuchâtel avec le concours de C. Kohler et P. Ferrara 1 Propos liminaires... 1 1.1 Objectifs de publication... 1 1.2 Genèse...
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
Plus en détailInstallation et compilation de gnurbs sous Windows
Installation et compilation de gnurbs sous Windows Installation de l environnement de développement Code::Blocks (Environnement de développement) 1. Télécharger l installateur de Code::Blocks (version
Plus en détailWinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/8.1 64 bits, Windows 2008 R2 et Windows 2012 64 bits
WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/8.1 64 bits, Windows 2008 R2 et Windows 2012 64 bits Manuel d initiation du Planificateur 2 INTRODUCTION 5 CHAPITRE I : INSTALLATION
Plus en détailChapitre 10. Architectures des systèmes de gestion de bases de données
Chapitre 10 Architectures des systèmes de gestion de bases de données Introduction Les technologies des dernières années ont amené la notion d environnement distribué (dispersions des données). Pour reliér
Plus en détailLa base de données XML exist. A. Belaïd
La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailCATALOGUE FORMATIONS 2015. DOMAINE Bases de données
DOMAINE Bases de données Version 1.0 - Octobre 2014 1, 2, 3 juin 2015 1, 2, 3 octobre 2015 CATALOGUE Analyse et conception d une base de données Elaboration de fiches de collecte de données Techniques
Plus en détailBases de données avancées Introduction
Bases de données avancées Introduction Dan VODISLAV Université de Cergy-Pontoise Master Informatique M1 Cours BDA Plan Objectifs et contenu du cours Rappels BD relationnelles Bibliographie Cours BDA (UCP/M1)
Plus en détailArmand PY-PATINEC 2010
Armand PY-PATINEC 2010 EPREUVE PRATIQUE : TABLEAU SYNOPTIQUE Activités Inventaire de bières et de leur lieu de fabrication Gestion des clients pour un programme de facturation Emploi du ruban de l interface
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailPrésentation du PL/SQL
I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur
Plus en détailHistorisation des données
Historisation des données Partie 1 : mode colonne par Frédéric Brouard, alias SQLpro MVP SQL Server Expert langage SQL, SGBDR, modélisation de données Auteur de : SQLpro http://sqlpro.developpez.com/ "SQL",
Plus en détailUtilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008
Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application
Plus en détailCours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com
Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailRapport de Stage Christopher Chedeau 2 au 26 Juin 2009
Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 «Web. De l intégration de pages statiques HTML à un CMS, à la dynamisation d un site grâce au Javascript et l utilisation de nouvelles technologies
Plus en détailSQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)
Avant-propos 1. À qui s'adresse ce livre? 15 2. Pré-requis 15 3. Objectifs du livre 16 4. Notations 17 Introduction à la Business Intelligence 1. Du transactionnel au décisionnel 19 2. Business Intelligence
Plus en détailwxwidgets dans un environnement Microsoft Windows
1/18 wxwidgets dans un environnement Microsoft Windows Ce document explique les démarches à suivre pour pouvoir utiliser «wxwidgets» à travers un environnement de développement. Normalement c est ce que
Plus en détailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailManipulation 4 : Application de «Change».
Manipulation 4 : Application de «Change». Première partie : Cette manipulation a pour but d utiliser un service Web afin d obtenir les taux de change appliqués entre les différentes monnaies référencées
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailLA GOUVERNANCE, OU COMMENT RAPPROCHER LES ÉQUIPES DE DÉVELOPPEMENT ET D INFRASTRUCTURE
Sébastien Levert & Julien Stroheker LA GOUVERNANCE, OU COMMENT RAPPROCHER LES ÉQUIPES DE DÉVELOPPEMENT ET D INFRASTRUCTURE La gouvernance technique, pourquoi? L enjeu premier pour le maintien de votre
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailLe langage SQL Rappels
Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,
Plus en détailFORMATION TALEND. Page 1 sur 9
FORMATION TALEND Ce livret contient et détaille les formulaires que vous devez nous retourner avec votre bon de commande. Vous y trouverez aussi toutes les informations susceptibles de vous aider à organiser
Plus en détailSQL Server 2012 - Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos)
Présentation 1. Introduction 13 2. Présentation de SQL Server 14 2.1 Qu'est-ce qu'un SGBDR? 14 2.2 Mode de fonctionnement Client/Serveur 16 2.3 Les plates-formes possibles 17 2.4 Les composants de SQL
Plus en détail27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)
Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)
Plus en détailRÉALISATION D UN SITE DE RENCONTRE
RÉALISATION D UN SITE DE RENCONTRE Par Mathieu COUPE, Charlène DOUDOU et Stéphanie RANDRIANARIMANA Sous la coordination des professeurs d ISN du lycée Aristide Briand : Jérôme CANTALOUBE, Laurent BERNARD
Plus en détailEclipse atelier Java
Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer
Plus en détailProjet de développement
Projet de développement Introduction à Eclipse Philippe Collet Licence 3 MIAGE S6 2012-2013 http://miageprojet2.unice.fr/index.php?title=user:philippecollet/projet_de_développement_2012-2013 Plan r Application
Plus en détailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
Plus en détailESPACE COLLABORATIF SHAREPOINT
Conseil de l Europe Service des Technologies de l Information ESPACE COLLABORATIF SHAREPOINT DOSSIER D UTILISATEUR 1/33 Sommaire 1. Présentation de SharePoint... 3 1.1. Connexion... 4 2. Les listes...
Plus en détailProjet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn
1 Organisation Projet de développement Introduction à Eclipse Philippe Collet Licence 3 Informatique Cours 1 : principes généraux - svn Cours 2 : Redmine et gestion de projet Cours 3 : Introduction à Eclipse
Plus en détailTous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.
Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détail