Mise en œuvre du langage PL.SQL



Documents pareils
Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle P. Bonnet

Visual Basic for Applications

Algorithmique et programmation : les bases (VBA) Corrigé

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Application 1- VBA : Test de comportements d'investissements

TD3 - Facturation avec archivage automatisé

PROGRAMMATION EVENEMENTIELLE sur EXCEL

Présentation du PL/SQL

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Comment créer et utiliser une fonction

.NET - Classe de Log

//////////////////////////////////////////////////////////////////// Administration bases de données

Excel. Identification. Informations sur vos besoins et objectifs. Notions fondamentales. Fiche de validation des besoins en formation Bureautique

Formations 2015 Bureautique

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org

Utilitaires méconnus de StrataFrame

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Rapport de Mini-Projet en ArcGIS Engine

1 TD 2 : Construction d'une chier Acrobat et envoi par

Chapitre 5 : Les procédures stockées PL/SQL

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

Formation VBA 3 Interagir

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Convers3 Documentation version Par Eric DAVID : vtopo@free.fr

Initiation à VBA pour Excel. Philippe Bernard Ingénierie Economique et Financière Université Paris-Dauphine

Stockez et organisez vos données sous Excel. Une approche systématique, structurée et simplifiée

CATALOGUE DES FORMATIONS 2014

FORMATION au VBA Pour EXCEL. Version 2007 & +

Paginer les données côté serveur, mettre en cache côté client

Préparation à l examen EFA en Macro

PROJET 1 : BASE DE DONNÉES REPARTIES

Gestion de stock pour un magasin

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

Programmation Visual Basic. Visite guidée d'un programme Visual Basic 6.0

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Java Licence Professionnelle CISII,

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

TP2_1 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

Listes de validation dans OpenOffice Calc

Cadastre du bruit SIT-JURA. Connecteur Arcview9.x - MSAccess. Mode d emploi. Appel formulaire. Page 1 sur 15

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Comment créer des rapports de test professionnels sous LabVIEW? NIDays 2002

PHP 4 PARTIE : BASE DE DONNEES

Corrigé des TD 1 à 5

Utilisation d Hyperplanning 2011

Cours Bases de données 2ème année IUT

Comment Créer une Base de Données Ab Initio

INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE

Bases de SQL. Hacks 1-6 CHAPITRE UN

Gestion du cache dans les applications ASP.NET

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

Bases de données avancées

Devoir Data WareHouse

CATALOGUE DES FORMATIONS

Le cas «BOURSE» annexe

Easy to. report. Connexion. Transformation. Stockage. Construction. Exploitation. Diffusion

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

manuellement. Le prototype ayant obtenu des résultats satisfaisants aux différents essais de labour est validé sur le plan suivant :

Excel et les bases de données

Cours Informatique Master STEP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Encryptions, compression et partitionnement des données

Le cas «BOURSE» annexe

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

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)

I0035 INGÉNIEUR - DÉVELOPPEUR APPLICAT IF / DECISIONNEL CONFIRMÉE SAS - SPSS - INFORMAT ICA. 27 ans - 4 ans d'expérience

Programmation VBA. Excel Daniel-Jean David. et Groupe Eyrolles, 2014, ISBN :

Formation Excel, Niveau initiation, module 1 DUREE DE LA FORMATION OBJECTIFS DE LA FORMATION

Compléments de documentation Scilab : affichage de texte et formatage de nombres

SNT4U16 - Initiation à la programmation TD - Dynamique de POP III - Fichiers sources

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

TD3: tableaux avancées, première classe et chaînes

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

La Clé informatique. Formation Excel XP Aide-mémoire

Keyyo Guide de mise en service CTI / API / TAPI Keyyo

COURS DE MS EXCEL 2010

Plan du cours Cours théoriques. 29 septembre 2014

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

SQL MAP. Etude d un logiciel SQL Injection

Utilisation du BDE pour la maintenance des fichiers DBF de l'application TopoCad:

Utiliser Access ou Excel pour gérer vos données

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Créer le schéma relationnel d une base de données ACCESS

L export de SAS vers Excel expliqué à ma fille

2 Serveurs OLAP et introduction au Data Mining

TP Contraintes - Triggers

Tenrox. Guide d intégration Tenrox-Salesforce. Janvier Tenrox. Tous droits réservés.

Structure d un programme

Procédure serveur : gestion des environnements X3 et bases de données ORACLE

MS SQL Express 2005 Sauvegarde des données

Conception, réalisation et mise en place d applications de supervision orientée métier au sein du groupe France Télécom

CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE

Java DataBaseConnectivity

S8 - INFORMATIQUE COMMERCIALE

Transcription:

Mise en œuvre du langage PL.SQL Il est possible avec RCITools Oracle/Excel de soumettre des ordres PL.SQL. L utilisation conjointe de cette possibilité avec celle de lire et d écrire très facilement des fichiers ascii comportant du SQL, a été conçue dans le but d offrir un environnement facilitant au maximum la manipulation de blocs PL.SQL.

Automatisation de Rci.Tools Il est possible de déclencher automatiquement le lancement de requêtes à RCI.Tools, exactement de la même façon que si l on utilisait le sous-menu DoSQL. Voici un exemple de sous-programme VBA (Visual Basic Applications) enchaînant une suite de requêtes SQL localisées dans des groupes de cellules nommés SQL1, SQL2, SQL3 et SQL4 : Notez la façon d appeler depuis un module macro de votre feuille de calcul, la procédure MenuSQL de la feuille RciW127.xls. RCI Informatique SA 16 Février 1998 version 1.27.8 p 2

Mise en oeuvre de RciTools Oracle/Excel et du langage VBA - VBA (Visual Basic Applications) est le langage commun aux outils bureautique de Microsoft, dont Microsoft Excel. - Le logiciel RciTools Oracle/Excel comporte un certain nombre de primitives, permettant d effectuer de manière très simple des requêtes à Oracle, depuis Excel VBA. Primitives disponibles : RciDoLogin (byval xuser as String, byval xpassword as String, byval xserver as String) résultat Integer : 0 si succès de la connexion, sinon le code erreur Oracle Action, établissement d une connexion vers un serveur Oracle La connexion reste ouverte jusqu au changement de connexion ou au fait de quitter Excel. RCIdoSelectSQL (byval xsql as String, byval xrow as Integer, byval xcolumn as Integer, byval xmaxrows as Integer) résultat Integer : 0 si succès de la requête, sinon le code erreur Oracle Action: Lancement de la requête SQL fournie dans l argument xsql, Le résultat de la requête est placée dans la feuille active, à la position (xrow, xcolumn). Si le nombre de lignes renvoyées par la requete est supérieur à la valeur xmaxrows, un dialogue est affiché à l utilisateur avec mention du nombre effectif de ligne. RCIgetSQL (byval xfile as String) résultat String : error si une erreur s est produite - le contenu du fichier si celui ci a pu être trouvé et lu Action: Lecture du fichier passé en argument et renvoi du contenu de celui-ci en tant que chaîne de caractères. RCIstrReplaceOne (byval xstring as String, byval xnewvalue as String) résultat String : error si une erreur s est produite - le contenu de la chaine remplacée Action: Recherche dans la chaîne xstring l occurence ou les différentes occurences de la sous-chaîne %1, et remplacement par la sous-chaîne xnewvalue. RCI Informatique SA 16 Février 1998 version 1.27.8 p 3

Exemple 1 - Connexion à Oracle - Objectif Tester une connection à une base Oracle et afficher un message en fonction du résultat de la connexion. - Source du programme 'Copyright RCI Informatique SA 1998 'Sample VBAsmp01.xls Public RCIdoLogin As String Sub test1() '-- Declarations Dim wuser, wpwd, wserver As String Dim r As Integer '-- Routine Call RciInit 'inits wserver = InputBox(Prompt:="Server?") r = Run(RCIdoLogin, "Scott", "Tiger", wserver) If r <> 0 Then MsgBox ("Error - " & r) Exit Sub Else MsgBox ("Connected to Scott at " & wserver) End If Sub RciInit() ModuleName = "rciw127.xls" RCIdoLogin = ModuleName & "!RCIdoLogin" RCI Informatique SA 16 Février 1998 version 1.27.8 p 4

Exemple 2 - Requête simple, renvoyant une valeur - Objectif Exécuter une requête SQL stockée dans une variable de type String - Source du programme 'Copyright RCI Informatique SA 1998 'Sample VBAsmp02.xls Public RCIdoSelectSQL As String Sub test1() '-- Declarations Dim r As Integer Dim wsql As String '-- Routine Call RciInit 'inits wsql = "Select count(*) from user_tables" r = Run(RCIdoSelectSQL, wsql, 1, 1, 1) '-- To Cell A1, one value If r <> 0 Then MsgBox ("Error - " & r): Exit Sub MsgBox "Result = " & ActiveSheet.Cells(2, 1) Sub RciInit() ModuleName = "rciw127.xls" RCIdoSelectSQL = ModuleName & "!RCIdoSelectSQL" RCI Informatique SA 16 Février 1998 version 1.27.8 p 5

Exemple 3 - Listage des tables du User courant, et pour chaque table détermination du nombre de lignes - Objectif Exécuter une requête SQL stockée dans une variable de type String - Source du programme 'Copyright RCI Informatique SA 1995/1998 'Sample VBAsmp03.xls Public RCIdoSelectSQL As String Public RCIgetSQL As String Public RCIstrReplaceOne As String Sub test1() Call RciInit 'initialisations routines 'login depuis le sous-programme, sans affichage de dialogue ActiveWindow.ScrollRow = 1: Columns("A:B").ClearContents 'chargement de la requête SQL de liste des tables wsql = Run(RCIgetSQL, "c:\rcitools\samples\vba002t1.sql") If wsql = "error" Then Exit Sub 'exécution de la requête, résultat en ligne 1, colonne 1, max 10 lignes r = Run(RCIdoSelectSQL, wsql, 1, 1, 10): If r <> 0 Then Exit Sub k = 1 Do k = k + 1 'on ne traite pas le titre wtable = ActiveSheet.Cells(k, 1): If wtable = "" Then Exit Do 'Lecture de la requête SQL depuis le disque wsql = Run(RCIgetSQL, "c:\rcitools\samples\vba002t2.sql") 'chgt requête If wsql = "error" Then Exit Sub 'remplacement de la variable %1 par le nom de la table wsql = Run(RCIstrReplaceOne, wsql, wtable) If wsql = "error" Then Exit Sub r = Run(RCIdoSelectSQL, wsql, 1, 3, 1): If r <> 0 Then Exit Sub ActiveSheet.Cells(k, 2) = ActiveSheet.Cells(2, 3) Loop ActiveSheet.Cells(1, 3) = "": ActiveSheet.Cells(2, 3) = "" 'effacement zone temp Sub RciInit() ModuleName = "rciw127.xls" RCIdoSelectSQL = ModuleName & "!RCIdoSelectSQL" RCIgetSQL = ModuleName & "!RCIgetSQL" RCIstrReplaceOne = ModuleName & "!RCIstrReplaceOne" RCI Informatique SA 16 Février 1998 version 1.27.8 p 6