Technicien Spécialisé en Développement Informatique

Dimension: px
Commencer à balayer dès la page:

Download "www.dimaista.c.la Technicien Spécialisé en Développement Informatique"

Transcription

1 Technicien Spécialisé en Développement Informatique

2 Partie 1 - Procédures stockées Lorsque vous créez une application avec SQL Server, le langage de programmation Transact-SQL est la principale interface de programmation entre vos applications et la base de données SQL Server. Lorsque vous utilisez des programmes Transact-SQL, vous disposez de deux méthodes pour enregistrer et exécuter les programmes. Vous pouvez enregistrer les programmes localement et créer des applications qui envoient les commandes à SQL Server et traitent les résultats, ou vous pouvez enregistrer les programmes comme des procédures stockées dans SQL Server et créer des applications qui exécutent ces procédures stockées et traitent les résultats. Les procédures stockées de SQL Server ressemblent aux procédures d'autres langages de programmation car elles peuvent : accepter des paramètres d'entrée et renvoyer plusieurs valeurs sous forme de paramètres de sortie à la procédure ou au lot d'instructions appelant ; contenir des instructions de programmation qui exécutent des opérations dans la base de données, y compris l'appel d'autres procédures ; renvoyer une valeur d'état à une procédure ou à un lot d'instructions appelants pour indiquer une réussite ou un échec (et la raison de l'échec). Vous pouvez utiliser l'instruction EXECUTE de Transact-SQL pour exécuter une procédure stockée. Les procédures stockées diffèrent des fonctions en ce sens qu'elles ne renvoient pas de valeurs à la place de leurs noms et qu'elles ne peuvent pas être employées directement dans une expression.

3 Les avantages d'utiliser des procédures stockées dans SQL Server au lieu de programmes Transact-SQL enregistrés localement sur des ordinateurs clients sont les suivants : Possibilité d'utiliser la programmation modulaire. Vous pouvez créer la procédure une fois, la stocker dans la base de données et l'appeler autant de fois que vous le voulez dans votre programme. Les procédures stockées peuvent être créées par une personne spécialisée dans la programmation des bases de données ; elles peuvent ensuite être modifiées indépendamment du code source du programme. Leur exécution est plus rapide. Si une opération nécessite un volume important de code Transact-SQL ou si elle est exécutée à de nombreuses reprises, les procédures stockées peuvent s'avérer plus rapides que les lots de code Transact-SQL. Elles sont analysées et optimisées au moment de leur création et, après leur première exécution, il est possible d'utiliser une version en mémoire des procédures. Les instructions Transact-SQL envoyées à plusieurs reprises depuis le client lors de chaque exécution, sont compilées et optimisées chaque fois qu'elles sont exécutées par SQL Server. Réduction du trafic du réseau. Une opération qui demande des centaines de lignes de code Transact-SQL peut être effectuée au moyen d'une seule instruction qui exécute le code dans une procédure, au lieu d'envoyer toutes ces lignes sur le réseau. Utilisation comme mécanisme de sécurité. Les utilisateurs peuvent obtenir l'autorisation d'exécuter une procédure stockée même s'il ne leur est pas permis d'exécuter directement les instructions de la procédure.

4 L'instruction Transact-SQL CREATE PROCEDURE permet de créer les procédures stockées de SQL Server et l'instruction ALTER PROCEDURE, de les modifier. La définition d'une procédure stockée contient deux composants principaux : la spécification du nom de la procédure et de ses paramètres, et le corps de la procédure, qui contient les instructions Transact-SQL permettant d'exécuter les opérations de la procédure. Création d'une procédure stockée Vous pouvez créer une procédure stockée en utilisant l'instruction Transact-SQL CREATE PROCEDURE. L'instruction CREATE PROCEDURE ne peut pas s'utiliser conjointement avec d'autres instructions SQL dans un même lot d'instructions. L'autorisation de créer des procédures stockées revient par défaut au propriétaire de la base de données, qui peut la transmettre à d'autres utilisateurs. Les procédures stockées sont des objets de base de données et leur nom doit respecter les règles gouvernant les identificateurs. Vous ne pouvez créer une procédure stockée que dans la base de données en cours. Pour créer une procédure stockée, vous devez préciser : les paramètres d'entrée et de sortie de la procédure ou du lot appelant ; les instructions de programmation qui exécutent les opérations dans la base de données, y compris l'appel à d'autres procédures ; la valeur d'état renvoyée à la procédure ou au lot appelant pour indiquer la réussite ou l'échec et, dans ce cas, la raison de l'échec.

5 Procédures stockées système Nombre d'activités administratives dans SQL Server s'exécutent à l'aide d'un type spécial de procédure connu sous le nom de procédure stockée système. Les procédures stockées système sont créées et enregistrées dans la base de données master et ont le préfixe sp_. Les procédures stockées du système peuvent s'exécuter depuis n'importe quelle base de données, sans avoir à qualifier complètement le nom de la procédure stockée, en utilisant le nom de base de données master. Il est fortement recommandé de ne pas créer de procédures stockées avec le préfixe sp_. SQL Server recherche toujours une procédure stockée en commençant par sp_ dans l'ordre suivant : 1. elle existe dans la base de données master ; 2. ensuite, en fonction des éventuels identificateurs fournis (nom de base de données ou propriétaire) ; 3. enfin, avec dbo comme propriétaire si aucun propriétaire n'est spécifié. Par conséquent, bien qu'il puisse exister dans la base de données en cours une procédure stockée créée par l'utilisateur ayant le préfixe sp_, la base de données master est toujours analysée la première, même si la procédure stockée est qualifiée avec le nom de la base de données. Important Si une procédure stockée créée par un utilisateur porte le même nom qu'une procédure stockée système, celle de l'utilisateur ne s'exécutera jamais. Regroupement Une procédure peut être créée avec le même nom qu'une procédure stockée existante, mais avec un numéro d'identification différent, ce qui permet de grouper les procédures logiquement. En regroupant les

6 procédures de même nom, vous pouvez les supprimer toutes en une seule fois. Les procédures utilisées dans la même application sont souvent regroupées de cette manière. Par exemple, les procédures utilisées avec l'application my_app pourraient s'appeler my_proc;1, my_proc;2, etc. En supprimant my_proc, vous supprimez tout le groupe. Une fois les procédures groupées, les procédures individuelles à l'intérieur du groupe ne peuvent pas être supprimées. Procédures stockées temporaires Les procédures stockées temporaires privées et globales, comme les tables temporaires, peuvent être créées en ajoutant les préfixes # et ## à leur nom. # désigne une procédure stockée temporaire locale, et ##, une procédure stockée temporaire globale. Ces procédures n'existent plus après l'arrêt de SQL Server. Les procédures stockées temporaires sont utiles lorsque vous vous connectez à des versions antérieures de SQL Server qui ne prennent pas en charge la réutilisation des plans d'exécution des instructions ou lots d'instructions Transact-SQL. Les applications se connectant à SQL Server version 2000 doivent utiliser la procédure stockée système sp_executesql au lieu de procédures stockées temporaires. Pour plus d'informations, voir Mise en mémoire cache et réutilisation du plan d'exécution. Seule la connexion qui a créé une procédure temporaire locale peut exécuter la procédure, laquelle est automatiquement supprimée au moment de la déconnexion (lorsque l'utilisateur se déconnecte de SQL Server ). Toute connexion peut exécuter une procédure stockée temporaire globale. Une procédure stockée temporaire globale existe jusqu'à ce que l'utilisateur qui l'a créée se déconnecte ; les versions de cette procédure en cours d'exécution par d'autres utilisateurs s'achèvent. Lorsque la connexion utilisée pour créer la procédure est fermée, aucune nouvelle exécution de cette procédure temporaire globale

7 n'est possible. Seules les connexions ayant déjà lancé l'exécution de la procédure stockée peuvent la terminer. Si une procédure stockée est créée directement dans la base de données tempdb sans le préfixe # ou ##, elle sera automatiquement supprimée à l'arrêt de SQL Server, parce que la base de données tempdb est recrééeà chaque démarrage de SQL Server. Les procédures créées directement dans la base de données tempdb continuent d'exister même au terme de la connexion qui l'a créée. Comme pour n'importe quel autre objet, l'autorisation d'exécuter une procédure stockée temporaire peut être accordée à d'autres utilisateurs, leur être refusée ou révoquée. Création d'une procédure stockée (Enterprise Manager) Pour créer une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, puis développez la base de données dans laquelle créer la procédure. 3. Cliquez avec le bouton droit sur Procédures stockées, puis cliquez sur Nouvelle procédure stockée. 4. Entrez le texte de la procédure stockée. Pour indenter le texte de la procédure stockée, appuyez sur TAB. Pour quitter la zone de texte, appuyez sur CTRL+TAB ou cliquez sur le bouton approprié. 5. Pour vérifier la syntaxe, cliquez sur Vérifier la syntaxe. 6. Pour définir des autorisations, cliquez sur Autorisations. Création d'une procédure stockée à l'aide de l'assistant Création de procédures stockées (Enterprise Manager) Pour créer une procédure stockée à l'aide de l'assistant Création de procédures stockées SQL Server

8 1. Développez un groupe de serveurs, puis développez le serveur sur lequel créer la vue. 2. Dans le menu Outils, cliquez sur Assistants. 3. Développez le dossier Bases de données. 4. Cliquez deux fois sur l'assistant Création de procédures stockées. 5. Exécutez les étapes de l'assistant. Définition des paramètres Une procédure stockée communique avec le programme appelant par le biais de ses paramètres. Lorsqu'un programme exécute une procédure stockée, il peut lui transmettre des valeurs à travers ses paramètres. Ces valeurs peuvent être utilisées comme des variables standard dans le langage de programmation Transact-SQL. Une procédure stockée peutaussi renvoyer des valeurs au programme appelant, par l'intermédiaire de paramètres OUTPUT. Elle peut compter jusqu'à 2100 paramètres, chacun doté d'un nom, d'un type de données, d'une direction et d'une valeur par défaut. Attribution d'un nom Chaque paramètre d'une procédure stockée doit être défini avec un nom unique. Les noms des procédures stockées doivent être précédés du comme les variables standard de Transact-SQL, et doivent respecter les règles se rapportant aux identificateurs d'objets. Le nom du paramètre peut être utilisé dans la procédure stockée pour obtenir et modifier la valeur du paramètre. Des valeurs peuvent être passées aux procédures stockées soit de façon explicite en nommant les paramètres et en leur donnant la valeur appropriée, soit en fournissant des valeurs aux paramètres dans l'instruction CREATE PROCEDURE sans les nommer. Par exemple, si la procédure stockée my_proc attend trois paramètres nommés

9 les valeurs qui lui sont transmises peuvent être assignées aux noms de paramètres de la façon suivante : EXECUTE = = = 3 ou selon leur position sans les nommer : EXECUTE my_proc 1, 2, 3 Vous pouvez spécifier les paramètres dans n'importe quel ordre si, pour exécuter une procédure stockée, vous les désignez par leur nom. Par contre, si vous ne les nommez pas, vous devez spécifier les paramètres dans le même ordre (de gauche à droite) qu'ils sont définis dans la procédure stockée. Vous devez, en outre, spécifier tous les paramètres, même s'ils sont facultatifs ou s'ils ont des valeurs par défaut. Par exemple, si les paramètres de my_proc sont tous facultatifs, vous pouvezexécuter my_proc en indiquant uniquement les valeurs des deux premiers paramètres, mais pas en vous contentant de spécifier seulement celles des deuxième et troisième paramètres. Cette règle est nécessaire pour que SQL Server soit en mesure d'identifier les paramètres spécifiés. Spécification d'un type de données Les paramètres d'une procédure stockée sont définis avec un type de données, comme dans le cas des colonnes d'une table. Ils peuvent être définis avec n'importe quel type de données Microsoft SQL Server 2000, y compris text et image. Et ils peuvent également utiliser des types de données définis par l'utilisateur. Remarque Le type de données cursor est exclusivement réservé aux paramètresoutput des procédures stockées. (Pour plus d'informations sur l'utilisation des variables de curseur, voir Portée des noms de curseur Transact-SQL).

10 Le type de données d'un paramètre détermine le type et la plage de valeurs admis pour le paramètre. Par exemple, si vous définissez un

11 paramètre avec le type de données tinyint, seules les valeurs numériques comprises entre 0 et 255 seront acceptées. Une erreur est renvoyée lorsqu'une procédure stockée est exécutée avec une valeur incompatible avec le type de données. Spécification de la direction d'un paramètre Tous les paramètres d'une procédure stockée peuvent recevoir des valeurs d'entrée lorsque la procédure est exécutée par le programme qui l'appelle. Exemple La procédure stockée ci-dessous, get_sales_for_title, utilise un paramètre d'entrée. Le reçoit, comme valeur d'entrée, le titre d'un livre défini par le programme appelant. L'instruction SELECT pour obtenir la valeur correcte ytd_sales et l'afficher. CREATE PROCEDURE varchar(80) -- This is the input parameter. AS -- Get the sales for the specified title. SELECT "YTD_SALES" = ytd_sales FROM titles WHERE title RETURN GO Si vous spécifiez le mot clé OUTPUT pour un paramètre dans la définition de la procédure stockée, cette dernière peut renvoyer la valeur actuelle du paramètre au programme appelant lors de sa sortie. Le programme appelant doit également utiliser le mot clé OUTPUT lorsqu'il exécute la procédure pour enregistrer la valeur du paramètre dans une variable, qu'il pourra ensuite utiliser. Pour plus

12 d'informations, voir Renvoi de données au moyen de paramètres OUTPUT. Attribution d'une valeur par défaut Vous pouvez créer une procédure stockée contenant des paramètres facultatifs en attribuant à ces derniers une valeur par défaut. Lorsque la procédure est exécutée, la valeur par défaut est prise en compte si aucune autre valeur n'a été spécifiée. L'attribution de valeurs par défaut est nécessaire parce qu'une erreur système est renvoyée lorsqu'un paramètre d'une procédure stockée n'a pas de valeur par défaut et que le programme appelant ne fournit pas de valeur pour ce paramètre lors de l'exécution de la procédure. S'il n'est pas possible d'affecter une valeur par défaut appropriée à un paramètre donné, vous pouvez spécifier à cet effet la valeur NULL, et faire en sorte que la procédure stockée affiche un message personnalisé lorsqu'elle est exécutée sans qu'une valeur ait été spécifiée pour ce paramètre. Remarque Si la valeur par défaut est une chaîne de caractères contenant des espaces ou des signes de ponctuation, ou si elle débute par un nombre (par exemple, 6xxx), elle doit figurer entre guillemets simples. Exemple L'exemple suivant illustre le comportement particulier adopté par la procédure get_sales_for_title lorsqu'elle est exécutée sans qu'une valeur ne soit affectée au CREATE PROCEDURE varchar(80) = NULL, -- NULL default int OUTPUT AS

13 -- Validate parameter. IS NULL BEGIN PRINT 'ERROR: You must specify a title value.' RETURN END -- Get the sales for the specified title and -- assign it to the output parameter. = ytd_sales FROM titles WHERE title RETURN GO L'exemple suivant illustre la procédure my_proc avec des valeurs par défaut pour chacun des et les valeurs affichées lorsque la procédure est exécutée avec des valeurs différentes : CREATE PROCEDURE int = NULL, -- NULL default int = 2, -- Default value of int = 3 -- Default value of 3 AS -- Display @third GO EXECUTE my_proc GO -- No parameters supplied Affiche :

14 NULL 2 3 EXECUTE my_proc 10, 20, 30 GO -- All parameters supplied Affiche : EXECUTE = Only second parameter supplied by name GO Affiche : NULL EXECUTE my_proc = Only first and third parameters GO Affiche : -- are supplied Programmation de procédures stockées Lorsque vous créez une procédure stockée, vous pouvez y insérer pratiquement n'importe quel code Transact-SQL pouvant faire l'objet d'un lot d'instructions. Règles de programmation des procédures stockées Les règles à suivre pour la programmation de procédures stockées

15 sont les suivantes : SQL Server La définition de CREATE PROCEDURE peut inclure n'importe quel nombre et type d'instructions SQL, excepté les instructions CREATE suivantes qui ne peuvent être employées dans aucune procédure stockée : CREATE DEFAULT CREATE PROCEDURE CREATE RULE CREATE TRIGGER CREATE VIEW Une procédure stockée peut créer des objets de base de données. Vous pouvez référencer un objet dans la procédure stockée où vous l'avez créé, à condition que sa création précède sa référence. Vous pouvez référencer des tables temporaires dans une procédure stockée. Si vous créez une table temporaire locale dans une procédure stockée, cette table n'existe que dans le cadre de cette procédure et disparaît au terme de la procédure. Si vous exécutez une procédure stockée qui en appelle une autre, la procédure appelée peut accéder à tous les objets créés par la première procédure, y compris aux tables temporaires. Si vous exécutez une procédure stockée distante qui apporte des modifications à une instance distante de SQL Server, ces modificationsne pourront pas être annulées (rollback). Les procédures stockées distantesne font pas partie des transactions. Une procédure stockée peut contenir au maximum 2100

16 paramètres. Le nombre maximal de variables locales dans une procédure stockée n'est limité que par la mémoire disponible.

17 Selon la mémoire disponible, la taille maximale d'une procédure stockée est de 128 Mo. Pour plus d'informations sur les règles de création des procédures stockées, voir CREATE PROCEDURE. Qualification des noms à l'intérieur d'une procédure stockée Dans une procédure stockée, les noms des objets non qualifiés par l'utilisateur et utilisés dans des instructions (par exemple, SELECT ou INSERT) reviennent par défaut au propriétaire de la procédure stockée. Si un utilisateur qui crée une procédure stockée n'indique pas le nom des tables référencées dans les instructions SELECT, INSERT, UPDATE ou DELETE de la procédure stockée, l'accès à ces tables par le biais de la procédure stockée est limité par défaut au créateur de la procédure. Les noms d'objets utilisés avec les instructions ALTER TABLE, CREATE TABLE, DROP TABLE, TRUNCATE TABLE, CREATE INDEX, DROP INDEX, UPDATE STATISTICS et DBCC doivent être qualifiés avec le nom du propriétaire de l'objet si d'autres utilisateurs doivent employer la procédure stockée. Par exemple, l'utilisatrice Mary, qui possède la table marytab, doit qualifier le nom de sa table quand celle-ci est utilisée avec l'une de ces instructions, si elle souhaite que d'autres utilisateurs puissent exécuter la procédure stockée dans laquelle la table est utilisée. Cette qualification est nécessaire parce que les noms d'objets sont résolus à chaque exécution de la procédure. Si marytab n'était pas qualifiée, lorsqu'un utilisateur nommé John tenterait d'exécuter la procédure, SQL Server rechercherait en vain une table appelée marytab appartenant à John. Cryptage des définitions de procédure Si, lors de la création d'une procédure stockée, vous voulez être sûr qu'aucun autre utilisateur ne puisse visualiser sa définition, utilisez la

18 clause WITH ENCRYPTION. La définition de la procédure est alors stockée dans un format illisible. Une fois cryptée, la définition de la procédure stockée ne peut être décryptée et visualisée par personne, que ce soit son propriétaire ou l'administrateur système. Exemple A. Création d'une procédure utilisant des paramètres Voici un exemple de création d'une procédure stockée qui est utile dans la base de données pubs. À partir du nom et du prénom d'un auteur, la procédure stockée affiche le titre et l'éditeur de chacun des livres de cet auteur : CREATE PROC varchar(20) AS SELECT au_lname, au_fname, title, pub_name FROM authors INNER JOIN titleauthor ON authors.au_id = titleauthor.au_id JOIN titles ON titleauthor.title_id = titles.title_id JOIN publishers ON titles.pub_id = publishers.pub_id WHERE au_fname AND au_lname GO Vous obtenez un message indiquant que la commande n'a renvoyé aucune donnée ni aucune ligne, ce qui signifie que la procédure a été créée. Exécutez maintenant la procédure stockée au_info : EXECUTE au_info Ringer, Anne GO Voici le jeu de résultats obtenu :

19 au_lname au_fname title pub_name Ringer Anne The Gourmet Microwave Binnet & Hardley Ringer Anne Is Anger the Enemy? New Moon Books (2 row(s) affected) B. Création d'une procédure stockée dont les paramètres utilisent des valeurs par défaut La procédure stockée suivante, pub_info2, affiche le nom de tous les auteurs qui ont écrit un livre publié par l'éditeur spécifié au moyen d'un paramètre. Si aucun nom d'éditeur n'est précisé, la procédure renvoie les noms des auteurs publiés par Algodata Infosystems. CREATE PROC varchar(40) = 'Algodata Infosystems' AS SELECT au_lname, au_fname, pub_name FROM authors a INNER JOIN titleauthor ta ON a.au_id = ta.au_id JOIN titles t ON ta.title_id = t.title_id JOIN publishers p ON t.pub_id = p.pub_id = p.pub_name Exécutez pub_info2 sans fournir de paramètre : EXECUTE pub_info2 GO Voici le jeu de résultats obtenu : au_lname au_fname pub_name Green Marjorie Algodata Infosystems

20 Bennet Abraham Algodata Infosystems O'Leary Michael Algodata Infosystems MacFeather Stearns Algodata Infosystems Straight Dean Algodata Infosystems Carson Cheryl Algodata Infosystems Dull Ann Algodata Infosystems Hunter Sheryl Algodata Infosystems Locksley Charlene Algodata Infosystems (9 row(s) affected) C. Exécution d'une procédure stockée qui remplace la valeur par défaut d'un paramètre par une valeur explicite Dans la procédure stockée suivante, showind2, titles est définie comme valeur par défaut pour le : CREATE PROC varchar(30) = 'titles' AS SELECT TABLE_NAME = sysobjects.name, INDEX_NAME = sysindexes.name, INDEX_ID = indid FROM sysindexes INNER JOIN sysobjects ON sysobjects.id = sysindexes.id WHERE sysobjects.name Les titres de colonne (par exemple, TABLE_NAME) facilitent l'interprétation des résultats. Voici les résultats de la procédure stockée pour la table authors : EXECUTE showind2 authors GO TABLE_NAME INDEX_NAME INDEX_ID authors UPKCL_auidind 1

21 authors aunmind 2 (2 row(s) affected) Si l'utilisateur ne spécifie pas de valeur, SQL Server emploie la table par défaut titles : EXECUTE showind2 GO Voici le jeu de résultats obtenu : TABLE_NAME INDEX_NAME INDEX_ID titles UPKCL_titleidind 1 titles titleind 2 (2 row(s) affected) D. Création d'une procédure stockée utilisant un paramètre de valeur NULL par défaut La valeur par défaut d'un paramètre peut être NULL. Dans ce cas, si l'utilisateur ne spécifie pas de paramètre, SQL Server exécute la procédure stockée en fonction de ses autres instructions. Aucun message d'erreur ne s'affiche. La définition de la procédure peut également indiquer l'action (ou les actions) à accomplir si l'utilisateur ne fournit pas de paramètre. Exemple : CREATE PROC varchar(30) = NULL AS IS NULL PRINT 'Give a table name' ELSE SELECT TABLE_NAME = sysobjects.name,

22 INDEX_NAME = sysindexes.name, INDEX_ID = indid FROM sysindexes INNER JOIN sysobjects ON sysobjects.id = sysindexes.id WHERE sysobjects.name E. Création d'une procédure stockée utilisant un paramètre par défaut contenant des caractères génériques La valeur par défaut peut contenir des caractères génériques (%, _, [] et [^]) si la procédure stockée utilise le paramètre avec le mot clé LIKE. Par exemple, showind peut être modifiée pour afficher des informations sur les tables système si l'utilisateur ne fournit pas de paramètre : CREATE PROC varchar(30) = 'sys%' AS SELECT TABLE_NAME = sysobjects.name, INDEX_NAME = sysindexes.name, INDEX_ID = indid FROM sysindexes INNER JOIN sysobjects ON sysobjects.id = sysindexes.id WHERE sysobjects.name La variante suivante de la procédure stockée au_info a des valeurs par défaut contenant des caractères génériques pour les deux paramètres : CREATE PROC varchar(30) = varchar(18) = '%' AS SELECT au_lname, au_fname, title, pub_name FROM authors INNER JOIN titleauthor ON authors.au_id = titleauthor.au_id JOIN titles ON titleauthor.title_id = titles.title_id JOIN publishers ON titles.pub_id = publishers.pub_id WHERE au_fname AND au_lname Si vous exécutez au_info2 sans spécifier de paramètre, la procédure affiche tous les auteurs dont le nom commence par la lettre D :

23 EXECUTE au_info2 GO Voici le jeu de résultats obtenu : au_lname au_fname title pub_name Dull Ann Secrets of Silicon Val Algodata Infosystems del Castillo Innes Silicon Val Gastrono Binnet & Hardley DeFrance Michel The Gourmet Microwave Binnet & Hardley (3 row(s) affected) L'exemple suivant omet le deuxième paramètre lorsque des valeurs par défaut ont été définies pour deux paramètres. Vous pouvez ainsi afficher les livres et les éditeurs de tous les auteurs dont le nom est Ringer : EXECUTE au_info2 Ringer GO au_lname au_fname title pub_name Ringer Anne The Gourmet Microwave Binnet & Hardley Ringer Anne Is Anger the Enemy? New Moon Books Ringer Albert Is Anger the Enemy? New Moon Books Ringer Albert Life Without Fear New Moon Books (4 row(s) affected)

24 Imbrication de procédures stockées On dit que les procédures stockées sont imbriquées lorsqu'une procédure stockée en appelle une autre. Vous pouvez ainsi aller jusqu'à 32 niveaux d'imbrication. L'imbrication augmente d'un niveau lorsque la procédure stockée appelée commence à s'exécuter, et diminue d'un niveau lorsque son exécution est terminée. Au-delà de 32 niveaux d'imbrication, la totalité de la chaîne de procédures échoue. Le niveau d'imbrication actuel des procédures stockées en exécution est enregistré dans la fonction Renvoi de données à partir d'une procédure stockée Les procédures stockées de SQL Server renvoient les données sous quatre formes : des paramètres de sortie, qui renvoient soit des données (entiers ou caractères) ou une variable de curseur, les curseurs étant des ensembles de résultats pouvant être extraits ligne par ligne (pour plus d'informations sur l'utilisation des variables de curseur, voir Portée des noms de curseur Transact-SQL) ; des codes de retour, qui sont toujours un entier ; un ensemble de résultats pour chaque instruction SELECT contenue dans la procédure stockée ou toute autre procédure stockée appelée par cette dernière (pour plus d'informations sur l'utilisation de l'instruction SELECT, voir Principes de base des requêtes) ; un curseur global qui peut être référencé en dehors de la procédure stockée Renvoi de données au moyen de paramètres OUTPUT Si vous spécifiez le mot clé OUTPUT pour un paramètre dans la définition de procédure, la procédure stockée peut renvoyer la valeur actuelle du paramètre au programme appelant lors de la sortie de la procédure. Pour enregistrer la valeur du paramètre dans une variable

25 afin que le programme appelant puisse l'utiliser, ce dernier doit inclure le mot clé OUTPUT lorsqu'il exécute la procédure stockée. Exemple L'exemple ci-dessous illustre une procédure stockée avec un paramètre d'entrée et un paramètre de sortie. Le premier paramètre de la recevra la valeur d'entrée spécifiée par le programme appelant tandis que le second sera utilisé pour renvoyer la valeur au programme appelant. L'instruction SELECT utilise le pour obtenir la valeur ytd_sales correcte et assigne cette valeur au paramètre de CREATE PROCEDURE varchar(80), -- This is the input int OUTPUT -- This is the output parameter. AS -- Get the sales for the specified title and -- assign it to the output parameter. = ytd_sales FROM titles WHERE title RETURN GO Le programme ci-dessous exécute la procédure stockée avec une valeur pour le paramètre d'entrée, et enregistre la valeur de sortie de la procédure dans la variable du programme appelant. -- Declare the variable to receive the output value of the procedure. int -- Execute the procedure with a title_id value -- and save the output value in a variable.

26 EXECUTE get_sales_for_title "Sushi, OUTPUT -- Display the value returned by the procedure. PRINT 'Sales for "Sushi, Anyone?": ' + convert(varchar(6),@ytd_sales_for_title) GO Sales for "Sushi, Anyone?": 4095 Des valeurs d'entrée peuvent également être définies pour les paramètres OUTPUT lorsque la procédure stockée est exécutée. Ceci permet à la procédure de recevoir une valeur du programme appelant, de la modifier ou de l'utiliser pour exécuter des opérations, puis de renvoyer la nouvelle valeur au programme appelant. Dans l'exemple précédent, la peut recevoir une valeur avant l'exécution de la procédure stockée. La contient la valeur du paramètre dans le corps de la procédure stockée, et la valeur de la est renvoyée au programme appelant lorsque la procédure est terminée. On appelle habituellement ce mécanisme «capacité de passage par référence». Si vous spécifiez OUTPUT pour un paramètre pendant l'exécution d'une procédure stockée alors que le paramètre n'est pas défini avec OUTPUT dans la procédure, vous obtiendrez un message d'erreur. Il est néanmoins possible d'exécuter une procédure stockée avec des paramètres OUTPUT et de ne pas spécifier OUTPUT lors de l'exécution de la procédure. Aucune erreur n'est renvoyée, mais vous ne pouvez pas utiliser la valeur de sortie dans le programme appelant. Renvoi de données au moyen d'un code de retour Une procédure stockée peut renvoyer une valeur entière appelé code de retour pour indiquer l'état d'exécution d'une procédure. Le code de retour d'une procédure se définit au moyen de l'instruction RETURN. Comme dans le cas des paramètres OUTPUT, vous devez

27 enregistrer le code de retour dans une variable lors de l'exécution de la procédure afin de pouvoir utiliser sa valeur dans le programme appelant. Par exemple, la de type de données int, sert à stocker le code de retour de la procédure stockée my_proc : int = my_proc Les codes de retour sont couramment utilisés dans les blocs de contrôle de flux à l'intérieur des procédures stockées afin de renseigner la valeur du code de retour pour chaque situation d'erreur possible. Vous pouvez utiliser la après une instruction Transact-SQL pour détecter si une erreur a eu lieu pendant l'exécution de l'instruction. Exemple A. Envoi d'un code de retour variable selon le type d'erreur L'exemple ci-dessous illustre comment la procédure get_sales_for_title adopte un comportement différent en définissant des valeurs de code de retour spéciales en fonction de l'erreur. Le tableau répertorie les valeurs entières que la procédure stockée affecte à chaque erreur possible. Valeur Description 0 Exécution réussie 1 Valeur de paramètre obligatoire non spécifiée 2 Valeur de paramètre incorrecte 3 Erreur d'obtention de la valeur des ventes 4 Valeur de ventes NULL dans le titre CREATE PROCEDURE get_sales_for_title -- This is the input parameter, with a varchar(80) = NULL,

28 -- This is the output int OUTPUT AS -- Validate parameter. IS NULL BEGIN PRINT "ERROR: You must specify a title value." RETURN(1) END ELSE BEGIN -- Make sure the title is valid. IF (SELECT COUNT(*) FROM titles WHERE title = 0 RETURN(2) END -- Get the sales for the specified title and -- assign it to the output parameter. = ytd_sales FROM titles WHERE title -- Check for SQL Server errors. <> 0 BEGIN RETURN(3) END ELSE BEGIN -- Check to see if the ytd_sales value is NULL. IS NULL RETURN(4) ELSE -- SUCCESS!!

29 RETURN(0) END GO Une telle utilisation des codes de retour permet aux programmes appelants de détecter et de traiter les erreurs qui se produisent pendant l'exécution de la procédure stockée. B. Traitement des différents codes de retour renvoyés par une procédure stockée L'exemple suivant crée un programme qui traite les codes de retour renvoyés par la procédure get_sales_for_title. -- Declare the variables to receive the output value and return code -- of the procedure. INT -- Execute the procedure with a title_id value -- and save the output value and return code in variables. = get_sales_for_title "Sushi, OUTPUT -- Check the return codes. = 0 BEGIN PRINT "Procedure executed successfully" -- Display the value returned by the procedure. PRINT 'Sales for "Sushi, Anyone?": ' + CONVERT(varchar(6),@ytd_sales_for_title) END ELSE = 1 PRINT "ERROR: No title_id was specified." ELSE = 2 PRINT "ERROR: An invalid title_id was specified."

30 ELSE = 3 PRINT "ERROR: An error occurred getting the ytd_sales." GO Exécution d'une procédure stockée Utilisez l'instruction EXECUTE de Transact-SQL pour exécuter une procédure stockée. L'utilisation dumot clé EXECUTE n'est pas nécessaire à cette exécution si la procédure est la première instruction du lot. Des valeurs de paramètres peuvent être fournies si une procédure stockée a été écrite pour les accepter. Remarque Si vous entrez des paramètres sous la = value, leur ordre n'a pas d'importance. Vous pouvez aussi omettre les paramètres pour lesquels une valeur par défaut a été définie. Si vous spécifiez un paramètre donné sous la = value, vous devez tous les spécifier de cette façon. Sinon, ils doivent apparaître dans l'ordre indiqué par l'instruction CREATE PROCEDURE. Lorsque le serveur exécute une procédure stockée, il refuse tous les paramètres qui n'étaient pas insérés dans la liste des paramètres au moment de la création de la procédure. Tout paramètre qui est passé par référence (en fournissant explicitement son nom) ne sera pas accepté si son nom ne concorde pas. Bien que vous puissiez omettre des paramètres ayant des valeurs par défaut, seule la liste des paramètres peut être tronquée. Par exemple, si une procédure stockée a cinq paramètres, vous pouvez omettre les deux derniers paramètres, mais pas omettre le quatrième et inclure le cinquième, à moins d'utiliser le = value.

31 La valeur par défaut d'un paramètre, si elle a été définie dans la procédure stockée, est utilisée dans les cas suivants : si aucune valeur n'est spécifiée pour le paramètre au moment de l'exécution de la procédure ; si le mot clé DEFAULT est spécifié comme valeur du paramètre. Pour exécuter une procédure stockée qui est groupée avec d'autres procédures du même nom, indiquez le numéro d'identification de la procédure à l'intérieur du groupe. Par exemple, pour exécuter la seconde procédure stockée du groupe my_proc, spécifiez : EXECUTE my_proc;2 Exécution automatique des procédures stockées Les procédures stockées marquées pour être exécutées automatiquement le sont à chaque démarrage de Microsoft SQL Server Cette exécution automatique est utile si vous voulez effectuer régulièrement certaines opérations ou dans le cas d'une procédure exécutée en arrière-plan, qui doit toujours être active. Elle revêt également de l'importance dans le cas de procédures stockées exécutant des tâches système ou de maintenance dans tempdb, par exemple la création d'une table temporaire globale. De cette façon, la table temporaire existe toujours dès que tempdb est recréée lors du démarrage de SQL Server. Une procédure stockée exécutée automatiquement présente les mêmes autorisations que les membres du rôle de serveur sysadmin. Les éventuels messages d'erreur générés par une procédure stockée sont enregistrés dans le journal des erreurs de SQL Server. Une procédure stockée en exécution automatique ne renvoie pas d'ensemblesde résultats. En effet, la procédure stockée est exécutée par SQL Server et non par un utilisateur, c'est pourquoi l'ensemble de résultats ne sortirait nulle part.

32 Bien que l'exécution automatique s'applique individuellement pour chaque procédure stockée, l'option de configuration scan for startup procs de SQL Server peut être définie de façon à éviter l'exécution automatique de toutes les procédures au démarrage de SQL Server. Pour valider ou invalider l'exécution automatique d'une procédure stockée Modification d'une procédure stockée et attribution d'un autre nom Si vous devez modifier les instructions ou les paramètres d'une procédure stockée, vous pouvez soit supprimer et recréer la procédure, soit la modifier en une seule étape. Si vous supprimez et recréez une procédure stockée, toutes les autorisations qui lui sont associées seront perdues. Si vous la modifiez, sa définition (ou celle de ses paramètres) est modifiée, mais ses autorisations sont préservées. Vous pouvez aussi renommer une procédure stockée. Le nouveau nom doit se conformer aux règles en vigueur pour les identificateurs. Seul le propriétaire d'une procédure stockée peut renommer celle-ci, mais le propriétaire de la base de données peut changer le nom des procédures stockées de n'importe quel utilisateur. Pour pouvoir renommer une procédure stockée, celle-ci doit se trouver dans la base de données en cours. Une procédure stockée peut aussi être modifiée de façon à crypter sa définition ou à rendre obligatoire sa recompilation à chaque exécution. Remarque La modification du nom ou de la définition d'une procédure stockée peut, lors de l'exécution, entraîner un échec au niveau de ses objets dépendants si ceux-ci n'ont pas été mis à jour pour tenir compte des modifications de la procédure. Modification d'une procédure stockée (Enterprise Manager) Pour modifier une procédure stockée

33 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Propriétés. 4. Dans la boîte Texte, modifiez le texte de la procédure stockée comme il convient. Utilisez les touches CTRL+TAB pour créer un alinéa dans le texte de la procédure stockée SQL Enterprise Manager. 5. Pour vérifier la syntaxe, cliquez sur Vérifier la syntaxe. 6. Pour modifier les autorisations, cliquez sur Autorisations. Attribution d'un nouveau nom à une procédure stockée (Enterprise Manager) Pour renommer une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Renommer. 4. Tapez le nouveau nom de la procédure stockée. 5. Confirmez le nouveau mot de passe. Remarque Si vous renommez une procédure stockée, le nom figurant dans le texte de la définition de la procédure n'est pas

34 modifié pour autant. Pour changer ce nom, vous devez modifier directement la procédure stockée. Attention Les procédures stockées étendues ne doivent pas être renommées, à moins que le code utilisé pour la définir ne soit lui aussi modifié. Sinon, la procédure ne s'exécutera pas. Recompilation d'une procédure stockée Comme une base de données est modifiée par des opérations telles que l'ajout d'index ou la modification de données dans les colonnes indexées, les plans de requête d'origine servant à accéder à ses tables doivent être à nouveau optimisés par leur recompilation. Cette optimisation s'effectue automatiquement lors de la première exécution d'une procédure stockée au redémarrage de Microsoft SQL Server Elle se produit également lorsqu'une table sousjacente utilisée par la procédure est modifiée. Toutefois, si vous ajoutez un nouvel index dont la procédure pourrait bénéficier, l'optimisation n'est pas automatique (il faut attendre une nouvelle exécution de la procédure après le redémarrage de SQL Server ). SQL Server offre trois moyens de recompiler une procédure stockée : La procédure système sp_recompile force la recompilation d'une procédure stockée lors de son exécution suivante. La création d'une procédure stockée incluant l'option WITH RECOMPILE dans sa définition indique que SQL Server ne met pas de plan en cache pour cette procédure et que celle-ci est recompilée à chaque fois qu'elle est exécutée. Utilisez l'option WITH RECOMPILE pour les procédures stockées dotées de paramètres dont les valeurs varient fortement d'une exécution à l'autre, ce qui entraîne à chaque fois la création de nouveaux plans d'exécution. L'utilisation de cette option n'est pas courante car elle ralentit l'exécution de la procédure stockée ; cette dernière doit en effet être recompilée à chaque exécution.

35 Vous pouvez forcer la recompilation d'une procédure stockée en spécifiant l'option WITH RECOMPILE lorsque vous exécutez celle-ci. Utilisez cette option uniquement lorsque le paramètre fourni n'est pas courant ou si les données ont changé de façon significative depuis la création de la procédure. Remarque Si un objet référencé par une procédure stockée est supprimé ou renommé, l'exécution de la procédure produit une erreur. Cependant, si un objet référencé dans une procédure stockée est remplacé par un objet du même nom, la procédure s'exécute sans qu'il soit nécessaire de la recompiler. Visualisation d'une procédure stockée Plusieurs procédures stockées système fournissent des informations sur les procédures stockées à partir des tables système. À l'aide de ces procédures stockées, vous pouvez : afficher les instructions Transact-SQL utilisées pour créer une procédure stockée, ce qui peut être utile si vous ne disposez pas des fichiers de script Transact-SQL utilisés pour créer la procédure stockée ; obtenir des informations sur une procédure stockée, comme son propriétaire, la date de sa création et ses paramètres ; afficher la liste des objets utilisés par la procédure stockée spécifiée et des procédures qui l'utilisent, cette liste permettantd'identifier les procédures affectées par la modification ou la suppression d'un objet de la base de données. Affichage de la définition d'une procédure stockée (Enterprise Manager) Pour visualiser la définition d'une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur.

36 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Propriétés. Affichage de la définition d'une procédure stockée (Enterprise Manager) Pour visualiser la définition d'une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Propriétés. Affichage des dépendances d'une procédure stockée (Enterprise Manager) Pour visualiser les dépendances d'une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit sur la procédure stockée, pointez sur Toutes les tâches, puis cliquez sur Afficher les dépendances. Affichage d'informations sur une procédure stockée étendue (Enterprise Manager) Pour afficher des informations sur une procédure stockée étendue

37 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données master, puis cliquez sur Procédures stockées étendues. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Propriétés. 4. Facultativement, cliquez sur (...) pour localiser la DLL contenant la procédure stockée étendue. 5. Facultativement, cliquez sur Autorisations pour voir ou définir les autorisations pour la procédure stockée étendue. Suppression d'une procédure stockée Vous pouvez supprimer une procédure stockée si elle ne vous est plus utile. Si une procédure stockée qui a été supprimée est appelée par une autre, SQL Server affiche un message d'erreur au moment de l'exécution de la procédure appelante. Cependant, si vous définissez une nouvelle procédure stockée ayant le même nom et les mêmes paramètres pour remplacer celle qui a été supprimée, les autres procédures qui la référencent pourront s'exécuter avec succès. Prenons par exemple une procédure stockée proc1 qui référence la procédure stockée proc2. Si vous supprimez proc2 et créez une procédure différente nommée proc2, proc1 référencera la nouvelle procédure stockée, et il n'est pas nécessaire de la recompiler. Dès que des procédures stockées ont été groupées, il est impossible de supprimer des procédures individuelles du groupe. La suppression d'une procédure stockée entraîne celle de toutes les procédures stockées du même groupe. Suppression d'un procédure stockée (Enterprise Manager) Pour supprimer une procédure stockée 1. Développez un groupe de serveurs, puis développez un serveur.

38 2. Développez le dossier Bases de données, développez la base de données à laquelle appartient la procédure stockée, puis cliquez sur Procédures stockées. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée puis cliquez sur Supprimer. 4. Pour connaître la manière dont la suppression de cette procédure stockée affectera la base de données, cliquez sur Afficher les dépendances. 5. Cliquez sur Supprimer tout. Suppression d'une procédure stockée étendue (Enterprise Manager) Pour supprimer une procédure stockée étendue 1. Développez un groupe de serveurs, puis développez un serveur. 2. Développez le dossier Bases de données, développez la base de données master, puis cliquez sur Procédures stockées étendues. 3. Dans le volet de détails, cliquez avec le bouton droit de la souris sur la procédure stockée étendue à supprimer puis cliquez sur Supprimer. 4. Pour connaître la manière dont la suppression de cette procédure stockée étendue affectera la base de données, cliquez sur Afficher les dépendances. 5. Cliquez sur Supprimer tout.

39 Partie 2 - Respect des règles d'entreprise à l'aide des déclencheurs SQL Serverfournit deux mécanismes principaux pour assurer l'application des règles d'entreprise et de l'intégrité des données : les contraintes et les déclencheurs. Un déclencheur est un type spécial de procédure stockée qui est automatiquement invoqué lorsque les données d'une table spécifique sont modifiées. Les déclencheurs sont invoqués en réponse aux instructions INSERT, UPDATE ou DELETE.Il peut interroger d'autres tables et peut inclure des instructions Transact-SQL complexes. Le déclencheur et l'instruction qui le déclenche, sont traités comme une unique transaction qui peut être annulée (par une opération de rollback) à partir du déclencheur. Si une erreur grave est détectée (par exemple un espace disque insuffisant), toute la transaction est automatiquement annulée. Les déclencheurs sont utiles dans les cas suivants : Les déclencheurs peuvent effectuer des modifications en cascade dans des tables associées de la base de données, mais ces modifications peuvent être exécutées plus efficacement par le biais de contraintes d'intégrité référentielle en cascade. Pour assurer l'application de restrictions plus complexes que celles définies à l'aide de contraintes CHECK. Contrairement aux contraintes CHECK, ils peuvent faire référence à des colonnes d'autres tables. Par exemple, un déclencheur peut utiliser une instruction SELECT à partir d'une autre table afin de comparer avec les données insérées ou mises à jour et d'effectuer des actions supplémentaires, comme modifier les données ou afficher un message d'erreur défini par l'utilisateur. Pour détecter la différence entre l'état d'une table avant et après une modification des données, et entreprendre une ou plusieurs actions en fonction de cette différence.

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procé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

Le Langage De Description De Données(LDD)

Le Langage De Description De Données(LDD) Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, 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étail

Configurer la supervision pour une base MS SQL Server Viadéis Services

Configurer la supervision pour une base MS SQL Server Viadéis Services Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès

Plus en détail

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5 1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases

Plus en détail

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

Paginer les données côté serveur, mettre en cache côté client Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule

Plus en détail

Historisation des données

Historisation 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étail

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

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES

Plus en détail

Licence 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 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

Création et Gestion des tables

Cré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étail

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

Langage 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étail

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

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions

Plus en détail

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ; RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines

Plus en détail

1/ Présentation de SQL Server :

1/ Présentation de SQL Server : Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture

Plus en détail

Les déclencheurs. Version 1.0. Grégory CASANOVA

Les 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étail

Les 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. 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étail

Corrigé de l'atelier pratique du module 3 : Récupération d'urgence

Corrigé de l'atelier pratique du module 3 : Récupération d'urgence Corrigé de l'atelier pratique du module 3 : Récupération d'urgence Table des matières Atelier pratique 3 : Récupération d'urgence 1 Exercice 1 : Implémentation d'une stratégie de sauvegarde 1 Exercice

Plus en détail

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

Partie 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étail

Tutorial sur SQL Server 2000

Tutorial 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étail

Gestion des utilisateurs et de leurs droits

Gestion des utilisateurs et de leurs droits Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE

Plus en détail

FileMaker 13. Guide de référence SQL

FileMaker 13. Guide de référence SQL FileMaker 13 Guide de référence SQL 2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont des marques commerciales de

Plus en détail

MS SQL Express 2005 Sauvegarde des données

MS SQL Express 2005 Sauvegarde des données MS SQL Express 2005 Sauvegarde des données Création : 08.04.2011 Modification : 08.04.2011 Situation La base de données gratuite MSSQL Express 2005 ne dispose pas d agent (planificateur de tâche) comme

Plus en détail

Corrigé de l'atelier pratique du module 5 : Analyse de SQL Server

Corrigé de l'atelier pratique du module 5 : Analyse de SQL Server Corrigé de l'atelier pratique du module 5 : Analyse de SQL Server Table des matières Atelier pratique 5 : Analyse de SQL Server 1 Exercice 1 : Analyse des performances SQL Server 1 Exercice 2 : Suivi de

Plus en détail

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution

Plus en détail

Once the installation is complete, you can delete the temporary Zip files..

Once the installation is complete, you can delete the temporary Zip files.. Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une

Plus en détail

Symantec Enterprise Vault

Symantec Enterprise Vault Symantec Enterprise Vault Manuel pour les utilisateurs de Microsoft Outlook 2010 9.0 Symantec Enterprise Vault: Manuel pour les utilisateurs de Microsoft Outlook 2010 Le logiciel décrit dans cette publication

Plus en détail

Perl Console. Votre compagnon pour développer en Perl. Les Journées du Perl 2007 16, 17 novembre, Lyon. Alexis Sukrieh <sukria@sukria.

Perl Console. Votre compagnon pour développer en Perl. Les Journées du Perl 2007 16, 17 novembre, Lyon. Alexis Sukrieh <sukria@sukria. Perl Console Votre compagnon pour développer en Perl Les Journées du Perl 2007 16, 17 novembre, Lyon Alexis Sukrieh Plan Pourquoi une console? Le modèle «Read-Eval-Print-Loop» Dépendances

Plus en détail

Olivier Mondet http://unidentified-one.net

Olivier 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

Bases de données et sites WEB

Bases 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étail

Oracle Learning Library Tutoriel Database 12c Installer le logiciel Oracle Database et créer une Database

Oracle Learning Library Tutoriel Database 12c Installer le logiciel Oracle Database et créer une Database Installer le logiciel Oracle Database et créer une Database Présentation Objectif Ce tutoriel montre comment utiliser Oracle Universal Installer (OUI) pour installer le logiciel Oracle Database 12c et

Plus en détail

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise SQL Serveur 2012+ Programme de formation France Belgique Suisse - Canada Microsoft Partner Formez vos salariés pour optimiser la productivité de votre entreprise Dernière mise à jour le : Avril 2014 Des

Plus en détail

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

Plus en détail

Sybase Adaptive Server Enterprise 15

Sybase Adaptive Server Enterprise 15 Sybase Adaptive Server Enterprise 15 Prêt pour Sybase Adaptive Server Enterprise 15? Novembre 2006 Documentation technique # 29 Introduction Cette présentation liste les fonctionnalités importantes de

Plus en détail

Description de SQL SERVER. historique

Description de SQL SERVER. historique Description de SQL SERVER SQLServer est un SGBDR qui accepte et traite des requêtes concurrentes provenant de divers clients. Il envoie les réponses aux clients concernés via des API (Application Programming

Plus en détail

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

Module 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étail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données relationnelles et leurs systèmes de Gestion III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation

Plus en détail

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE 2 ème partie : REQUÊTES Sommaire 1. Les REQUÊTES...2 1.1 Créer une requête simple...2 1.1.1 Requête de création de listage ouvrages...2 1.1.2 Procédure de

Plus en détail

WEB page builder and server for SCADA applications usable from a WEB navigator

WEB page builder and server for SCADA applications usable from a WEB navigator Générateur de pages WEB et serveur pour supervision accessible à partir d un navigateur WEB WEB page builder and server for SCADA applications usable from a WEB navigator opyright 2007 IRAI Manual Manuel

Plus en détail

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]

Plus en détail

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux Distribué par Le Projet Documentation d'openoffice.org Table of Contents 1) Préambule...3 2) Télécharger

Plus en détail

Tutoriel de formation SurveyMonkey

Tutoriel de formation SurveyMonkey Tutoriel de formation SurveyMonkey SurveyMonkey est un service de sondage en ligne. SurveyMonkey vous permet de créer vos sondages rapidement et facilement. SurveyMonkey est disponible à l adresse suivante

Plus en détail

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

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle

Plus en détail

Bases de SQL. Hacks 1-6 CHAPITRE UN

Bases de SQL. Hacks 1-6 CHAPITRE UN CHAPITRE UN Bases de SQL Hacks 1-6 Même les commandes SQL les plus simples peuvent comporter des variantes curieuses ; ce chapitre vous montrera qu un programmeur astucieux peut exploiter les nombreuses

Plus en détail

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

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N

Plus en détail

PHP 5. La base de données MySql. A. Belaïd 1

PHP 5. La base de données MySql. A. Belaïd 1 PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple

Plus en détail

Les BASES de DONNEES dans WampServer

Les BASES de DONNEES dans WampServer Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui

Plus en détail

Les Utilisateurs dans SharePoint

Les Utilisateurs dans SharePoint Les Utilisateurs dans SharePoint La gestion des utilisateurs dans SharePoint SharePoint dont le cœur est l'outil collaboratif, Windows SharePoint Services. Chaque utilisateur (ou collaborateur) peut créer

Plus en détail

Langage SQL : créer et interroger une base

Langage SQL : créer et interroger une base Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,

Plus en détail

Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION

Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION Sage CRM NOTICE The information contained in this document is believed to be accurate in all respects but

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

Gestion de base de données

Gestion 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étail

Devoir Data WareHouse

Devoir Data WareHouse Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE

Plus en détail

Guide de configuration de SQL Server pour BusinessObjects Planning

Guide de configuration de SQL Server pour BusinessObjects Planning Guide de configuration de SQL Server pour BusinessObjects Planning BusinessObjects Planning XI Release 2 Copyright 2007 Business Objects. Tous droits réservés. Business Objects est propriétaire des brevets

Plus en détail

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble. Gaëlle PERRIN SID2 Grenoble Le 10/04/2014 Base de Données (BD) : une grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables

Plus en détail

Guide de l'utilisateur pour l'assistant d importation de SAP BusinessObjects Enterprise

Guide de l'utilisateur pour l'assistant d importation de SAP BusinessObjects Enterprise Guide de l'utilisateur pour l'assistant d importation de SAP BusinessObjects Enterprise SAP BusinessObjects Enterprise XI 3.1 Service Pack 3 Copyright 2010 SAP AG. Tous droits réservés.sap, R/3, SAP NetWeaver,

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Support de Cours REQUÊTES TRANSACT-SQL DANS MICROSOFT SQL SERVER 2000. Stéphane N GUESSAN Groupe Pigier Abidjan Version 1.

Support de Cours REQUÊTES TRANSACT-SQL DANS MICROSOFT SQL SERVER 2000. Stéphane N GUESSAN Groupe Pigier Abidjan Version 1. Support de Cours REQUÊTES TRANSACT-SQL DANS MICROSOFT SQL SERVER 2000 Stéphane N GUESSAN Groupe Pigier Abidjan Version 1.1 du 29/04/05 CHAPITRE 0 : INTRODUCTION...4 I) Objectifs...4 II) Certification Microsoft...4

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition

Plus en détail

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

Table 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étail

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

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services Nous verrons dans cet article comment exploiter simplement les données de Log de SQL Server 2008 R2 Reporting Services

Plus en détail

Django et PostgreSQL sous la charge

Django et PostgreSQL sous la charge Django et PostgreSQL sous la charge Rodolphe Quiédeville Pourquoi couper la queue du poulet? RMLL - Beauvais 8 juillet 2015 Rodolphe Quiédeville (PeopleDoc) Django et PostgreSQL sous la charge 8 juillet

Plus en détail

Création de Sous-Formulaires

Création de Sous-Formulaires Création de Sous-Formulaires Révision 1.01 du 02/01/04 Réalisé avec : OOo 1.1.0 Plate-forme / Os : Toutes Distribué par le projet Fr.OpenOffice.org Table des Matières 1 But de ce how-to...3 2 Pré-requis...3

Plus en détail

v7.1 SP2 Guide des Nouveautés

v7.1 SP2 Guide des Nouveautés v7.1 SP2 Guide des Nouveautés Copyright 2012 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,

Plus en détail

Introduction à JDBC. Accès aux bases de données en Java

Introduction à JDBC. Accès aux bases de données en Java Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity

Plus en détail

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com - 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................

Plus en détail

PROJET 1 : BASE DE DONNÉES REPARTIES

PROJET 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étail

TP3 : Creation de tables 1 seance

TP3 : Creation de tables 1 seance Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer

Plus en détail

DOCUMENTATION - FRANCAIS... 2

DOCUMENTATION - FRANCAIS... 2 DOCUMENTATION MODULE CATEGORIESTOPMENU MODULE CREE PAR PRESTACREA INDEX : DOCUMENTATION - FRANCAIS... 2 INSTALLATION... 2 CONFIGURATION... 2 LICENCE ET COPYRIGHT... 3 SUPPORT TECHNIQUE ET MISES A JOUR...

Plus en détail

Exercices sur SQL server 2000

Exercices sur SQL server 2000 Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes 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étail

Administration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/

Administration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données II Objets avancés dans les bases de données OBJECTIFS 2.1. NOTIONS 2.1.1.

Plus en détail

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation

Plus en détail

Les bases de l optimisation SQL avec DB2 for i

Les bases de l optimisation SQL avec DB2 for i Les bases de l optimisation SQL avec DB2 for i Christian GRIERE cgriere@fr.ibm.com Common Romandie 3 mai 2011 Les fleurs et les requêtes Lorsque l on veut planter de nouvelles fleurs dans un jardin il

Plus en détail

CREATION WEB DYNAMIQUE

CREATION 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étail

Résumé S Q L. Auteur: Alexandre PATIN Edition: 22 février 2000 E-mail : alexandre.patin@free.fr URL : http://alexandre.patin.free.

Résumé S Q L. Auteur: Alexandre PATIN Edition: 22 février 2000 E-mail : alexandre.patin@free.fr URL : http://alexandre.patin.free. Résumé S Q L Auteur: Alexandre PATIN Edition: 22 février 2000 E-mail : alexandre.patin@free.fr URL : http://alexandre.patin.free.fr/ Toute reproduction, même partielle, par quelque procédé que ce soit,

Plus en détail

TP Contraintes - Triggers

TP 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étail

Le Langage SQL version Oracle

Le Langage SQL version Oracle Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn

Plus en détail

OpenOffice.org Présentation - Débuter. Distribué par Le projet OpenOffice.org

OpenOffice.org Présentation - Débuter. Distribué par Le projet OpenOffice.org OpenOffice.org Présentation - Débuter Distribué par Le projet OpenOffice.org Table des Matières 1 Introduction 5 2 Créer une nouvelle présentation 5 2.1 L'utilisation d'un AutoPilote 5 2.2 La création

Plus en détail

Vue d ensemble de Windows PowerShell

Vue d ensemble de Windows PowerShell Chapitre 1 Vue d ensemble de Windows PowerShell Après avoir lu ce chapitre, vous serez capable de : Comprendre l utilisation et les capacités de base de Microsoft Windows PowerShell. Installer Windows

Plus en détail

English Q&A #1 Braille Services Requirement PPTC 144918. Q1. Would you like our proposal to be shipped or do you prefer an electronic submission?

English Q&A #1 Braille Services Requirement PPTC 144918. Q1. Would you like our proposal to be shipped or do you prefer an electronic submission? English Q&A #1 Braille Services Requirement PPTC 144918 Q1. Would you like our proposal to be shipped or do you prefer an electronic submission? A1. Passport Canada requests that bidders provide their

Plus en détail

Systèmes de Gestion de Bases de Données

Systèmes de Gestion de Bases de Données Systèmes de Gestion de Bases de Données Luiz Angelo STEFFENEL DUT Informatique 2ème année IUT Nancy Charlemagne Vues Vue : une table virtuelle de la base de données dont le contenu est défini par une requête

Plus en détail

BASES DE DONNEES TP POSTGRESQL

BASES DE DONNEES TP POSTGRESQL 2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout

Plus en détail

1. Aménagements technologiques 2. Installation de Microsoft SQL Server 2012

1. Aménagements technologiques 2. Installation de Microsoft SQL Server 2012 Microsoft SQL Server 2012 Guide d installation et de configuration sur des serveurs Microsoft Windows version 2008/2008R2/2012 ( Décembre 2012 ) Ce guide explique les différentes étapes pour installer

Plus en détail

8. Gestionnaire de budgets

8. Gestionnaire de budgets 8. Gestionnaire de budgets 8.1 Introduction Le Gestionnaire de budgets (Budget Workbench) permet aux utilisateurs de travailler sur les données budgétaires qu ils ont importées sur leur station de travail

Plus en détail

lundi 3 août 2009 Choose your language What is Document Connection for Mac? Communautés Numériques L informatique à la portée du Grand Public

lundi 3 août 2009 Choose your language What is Document Connection for Mac? Communautés Numériques L informatique à la portée du Grand Public Communautés Numériques L informatique à la portée du Grand Public Initiation et perfectionnement à l utilisation de la micro-informatique Microsoft Document Connection pour Mac. Microsoft Document Connection

Plus en détail

Présentation Windows Azure Hadoop Big Data - BI

Présentation Windows Azure Hadoop Big Data - BI Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...

Plus en détail

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

Chapitre 5 : Les procédures stockées PL/SQL I. Introduction Une procédure ou une fonction stockée est un bloc PL/SQL nommé pouvant accepter des paramètres et être appelée. Généralement, on utilise une fonction pour calculer une valeur. Les procédures

Plus en détail

DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0

DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0 DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0 INDEX : DOCUMENTATION - FRANCAIS... 2 1. INSTALLATION... 2 2. CONFIGURATION... 2 3. LICENCE ET COPYRIGHT... 3 4. MISES

Plus en détail

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

Dans l'article précédent, vous avez appris

Dans l'article précédent, vous avez appris Pour les débutants Les différents formats de sortie proposés par PHPExcel La bibliothèque orientée objet PHPExcel permet de lire et créer des fichiers pour tableurs. Dans cette série d articles, vous apprendrez

Plus en détail

MEDIAplus elearning. version 6.6

MEDIAplus elearning. version 6.6 MEDIAplus elearning version 6.6 L'interface d administration MEDIAplus Sommaire 1. L'interface d administration MEDIAplus... 5 2. Principes de l administration MEDIAplus... 8 2.1. Organisations et administrateurs...

Plus en détail

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes Volubis.fr Conseil et formation sur OS/400,

Plus en détail

Bernard HAMM, Évelyne LAVOISIER

Bernard HAMM, Évelyne LAVOISIER 92 MAÎTRISE DE PROGICIELS DE GESTION DE BASES DE DONNÉES ET DE TRAITEMENT DE TEXTE Compte rendu d'un stage à l'usage des professeurs de sciences sociales. Ce stage a été programmé A la demande et avec

Plus en détail

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

Comment Créer une Base de Données Ab Initio Comment Créer une Base de Données Ab Initio Diffusé par Le Projet Documentation OpenOffice.org Table des Matières 1. Création de la Source de Données...3 2. Ajout de Tables dans une Source de Données...3

Plus en détail

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Partie 0 : Gestion des tablespace et des utilisateurs... 3 Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à

Plus en détail

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Le langage SQL pour Oracle - partie 1 : SQL comme LDD Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger

Plus en détail

AGRÉGATION «ÉCONOMIE ET GESTION»

AGRÉGATION «ÉCONOMIE ET GESTION» AGRÉGATION «ÉCONOMIE ET GESTION» CONCOURS INTERNE SESSION 2002 ÉPREUVE SUR LES TECHNIQUES DE GESTION ET COMPORTANT DES ASPECTS PÉDAGOGIQUES DOMAINE : économie et gestion informatique Durée de préparation

Plus en détail