Module 12 : Implémentation de procédures stockées.

Slides:



Advertisements
Présentations similaires
Active Directory Windows 2003 Server
Advertisements

Module 5 : Implémentation de l'impression
PL/SQL : Le Langage PL/SQL est une extension du SQL, qui offre
Fonctionnalités des SGBD
Module 10 : Gestion et analyse de l'accès réseau
Vue d'ensemble Vue d'ensemble de la sécurité dans Windows Server 2003
Module 7 : Résolution de noms NetBIOS à l'aide du service WINS
C.
LE LANGAGE SQL : LDD La création de tables L’ordre CREATE CREATE TABLE nom_de_table (Nom_colonne Type_colonne, Nom_colonne Type_colonne,
Contrôles d'accès aux données
Module 1 : Préparation de l'administration d'un serveur
Le langage PHP 5.
Connexion en mode application. Bases de données - Yann Loyer2 Connexion en mode application Pour tout type dutilisateurs : –passif, actif, gérant Permettre.
Configuration de Windows Server 2008 Active Directory
L’utilisation des bases de données
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
Module 4 : Création et gestion de comptes d'utilisateur
Création et gestion de comptes d'utilisateur
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Procédures stockées CPI-SQLServer.
Création de bases de données
Module 2 : Préparation de l'analyse des performances du serveur
Les concepts et les méthodes des bases de données
Module 5 : Gestion de l'accès aux ressources à l'aide de groupes
Module 3 : Création d'un domaine Windows 2000
Module 1 : Installation de Windows 2000 ou mise à niveau vers Windows 2000.
Module 2 : Configuration de l'environnement Windows 2000.
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
Module 1 : Installation de Microsoft Windows XP Professionnel
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 SQL jointure PHILIPPE BANCQUART.
Vue d'ensemble Surveillance des journaux d'événements
PHP & My SQL.
Module 8 : Surveillance des performances de SQL Server
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Transac SQL Intégrité des données.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Chapitre 6.2 Les curseurs Cours SGBD 3A Mme hkimi Jihène
Objectifs A la fin de ce chapitre, vous pourrez : présenter l'utilisation d'opérations de chargement de données par chemin direct décrire l'utilisation.
Créer des packages.
Vue d'ensemble Préparation de l'installation
Module 9 : Transfert de données. Vue d'ensemble Présentation du transfert de données Outils d'importation et d'exportation de données disponibles dans.
Module 4 : Gestion de la sécurité. Vue d'ensemble Implémentation d'un mode d'authentification Attribution de comptes de connexion à des utilisateurs et.
Module 7 : Utilisation de requêtes élaborées
DEFINITION DES DONNEES : schéma conceptuel. Schéma conceptuel instructiondescription CREATE TABLEcréation d'une relation ALTER TABLEmodification de la.
Module 4 : Implémentation de l'intégrité des données.
Module 13 : Implémentation de déclencheurs. Vue d'ensemble Présentation des déclencheurs Définition de déclencheurs Exemples de déclencheurs Performances.
Gérer les rôles.
1 Copyright © Oracle Corporation, Tous droits réservés. Présentation des sous-programmes PL/SQL.
Module 3 : Création d'un domaine Windows 2000
Module 5 : Exécution de tâches administratives
Gérer les utilisateurs
21/04/2015© Robert Godin. Tous droits réservés.1 6Gestion des contraintes d’intégrité en SQL n Contrainte d'intégrité statique – respectée pour chacun.
Création et Gestion de Tables
Module 1 : Vue d'ensemble de Microsoft SQL Server
3 Copyright © Oracle Corporation, Tous droits réservés. Créer des fonctions.
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
4 Copyright © Oracle Corporation, Tous droits réservés. Gérer les sous-programmes.
Les vues Une vue: c’est une relation virtuelle. Définie par:
Module 7 : Restauration de bases de données
Cours Access TuanLoc NGUYEN. Contact Nguyen TuanLoc Tél: Web:
Procédures Stockées Fonctions Paquetages
Module 2 : Planification de l'installation de SQL Server
Les bases de données Séance 8 Jointures.
Module 11 : Implémentation de vues. Vue d'ensemble Présentation d'une vue Avantages liés aux vues Définition de vues Modification de données à l'aide.
Module 3 : Gestion des fichiers de base de données
NIVEAU LOGIQUE Vues. Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues.
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Les vues, indexes, séquences.  Qu’est ce qu’une vue 1. Une vue est une vision partielle ou particulière des données d'une ou plusieurs tables de la base.
Le Langage de Manipulation de Données LMD Module 6.
Chapitre 12 Surveillance des ressources et des performances Module S41.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Transcription de la présentation:

Module 12 : Implémentation de procédures stockées

Présentation des procédures stockées Création, exécution et modification des procédures stockées Utilisation de paramètres dans les procédures stockées Exécution de procédures stockées étendues Traitement des messages d'erreur Performances Vue d'ensemble

Définition des procédures stockées Traitement initial des procédures stockées Traitement ultérieur des procédures stockées Avantages des procédures stockées  Présentation des procédures stockées

Définition des procédures stockées Ensembles nommés d'instructions Transact-SQL Méthode permettant d'encapsuler les tâches répétitives Cinq types (système, locales, temporaires, distantes et étendues) Acceptation des paramètres d'entrée et des valeurs de renvoi Renvoi d'une valeur d'état de réussite ou d'échec

Traitement initial des procédures stockées Entrées dans les tables sysobjects et syscomments Entrées dans les tables sysobjects et syscomments Plan compilé en cache de procédure Plan compilé en cache de procédure Compilation Optimisation CréationCréation Exécution (première fois ou recompilation) recompilation) Analyse

Traitement ultérieur des procédures stockées Plan d'exécution extrait Élimination des plans inutilisés Plan de requêteContexte d'exécution SELECT * FROM dbo.member WHERE member_no = ? Connexion Connexion 2 Connexion

Avantages des procédures stockées Partagent une logique d'application Protègent les détails du schéma de la base de données Fournissent des mécanismes de sécurité Améliorent les performances Réduisent le trafic sur le réseau

 Création, exécution et modification des procédures stockées Création de procédures stockées Instructions pour la création de procédures stockées Exécution de procédures stockées Modification et suppression de procédures stockées

Création de procédures stockées Création dans la base de données actuelle à l'aide de l'instruction CREATE PROCEDURE Jusqu'à 32 niveaux d'imbrication Utilisation de sp_help pour afficher des informations Use library GO CREATE PROC dbo.overdue_books AS SELECT * FROM dbo.loan WHERE due_date < GETDATE() GO

Instructions pour la création de procédures stockées L'utilisateur dbo doit être propriétaire de tous les objets d'une base de données Une tâche par procédure stockée Créez, testez et déboguez la procédure stockée sur le serveur Évitez le préfixe sp_ dans les noms de procédures stockées Utilisez les mêmes paramètres de connexion pour toutes les procédures stockées Limitez l'utilisation des procédures stockées temporaires Ne supprimez jamais directement d'entrées dans la table système syscomments

Exécution de procédures stockées Exécution d'une procédure stockée en tant que telle Exécution d'une procédure stockée au sein d'une instruction INSERT EXEC overdue_books INSERT INTO customers EXEC employee_customer

Modification et suppression de procédures stockées Modification des procédures stockées Incluez toute option dans ALTER PROCEDURE N'affecte pas les procédures stockées imbriquées Suppression des procédures stockées ALTER PROC overdue_books AS SELECT CONVERT(char(8), due_date, 1) date_due, isbn, copy_no, SUBSTRING(title, 1, 30)title, member_no, lastname FROM OverdueView ORDER BY due_date ALTER PROC overdue_books AS SELECT CONVERT(char(8), due_date, 1) date_due, isbn, copy_no, SUBSTRING(title, 1, 30)title, member_no, lastname FROM OverdueView ORDER BY due_date

Atelier 12.1 : Création de procédures stockées

 Utilisation de paramètres dans les procédures stockées Utilisation des paramètres d'entrée Exécution de procédures stockées avec des paramètres d'entrée Renvoi de valeurs avec des paramètres de sortie Recompilation explicite de procédures stockées

Utilisation des paramètres d'entrée Identifiez d'abord les valeurs manquantes ou invalides Définissez des valeurs par défaut appropriées CREATE PROC longstring = char(8) = 'Anglais' AS is null BEGIN PRINT "Veuillez spécifier un titre (complet ou partiel) et la langue" PRINT "find_isbn 'Oliver%', 'Japonais'"... CREATE PROC longstring = char(8) = 'Anglais' AS is null BEGIN PRINT "Veuillez spécifier un titre (complet ou partiel) et la langue" PRINT "find_isbn 'Oliver%', 'Japonais'"...

Exécution de procédures stockées avec des paramètres d'entrée Transmission de valeurs par référence Transmission de valeurs par position EXEC addadult 'LaBrie', 'Linda', null, 'Dogwood Drive', 'Sacramento', 'CA', '94203', null EXEC = = = 'Dogwood = = = '94203' EXEC = = = 'Dogwood = = = '94203'

Renvoi de valeurs avec des paramètres de sortie CREATE PROCEDURE smallint OUTPUT AS smallint EXECUTE mathtutor 5, OUTPUT SELECT 'Le résultat est : Le résultat est : 30 CREATE PROCEDURE smallint OUTPUT AS smallint EXECUTE mathtutor 5, OUTPUT SELECT 'Le résultat est : Le résultat est : 30 Résultats de la procédure stockée Résultats de la procédure stockée Exécution de la procédure stockée Exécution de la procédure stockée Création de la procédure stockée Création de la procédure stockée

Recompilation explicite de procédures stockées Recompilez lorsque Les procédures stockées renvoient des jeux de résultats extrêmement variés Un nouvel index est ajouté dans une table sous-jacente La valeur du paramètre est atypique Recompilez à l'aide des instructions CREATE PROCEDURE [WITH RECOMPILE] EXECUTE [WITH RECOMPILE] sp_recompile

Exécution de procédures stockées étendues Sont programmées à l'aide de l'API ODS Peuvent inclure des fonctions C et C++ Peuvent contenir plusieurs fonctions Peuvent être appelées à partir d'un client ou de SQL Server Ne peuvent être ajoutées que dans la base master EXEC master..xp_cmdshell 'dir c:\mssql7'

Traitement des messages d'erreur L'instruction RETURN permet de quitter sans conditions une requête ou une procédure La procédure sp_addmessage crée des messages d'erreur personnalisés La fonction système contient le numéro d'erreur de la dernière instruction Transact-SQL exécutée L'instruction RAISERROR Renvoie un message d'erreur défini par l'utilisateur Définit un indicateur système pour consigner l'erreur

Démonstration : Traitement des messages d'erreur

Performances Utilisez l'Analyseur de performances SQL Server SQL Server : Gestionnaire de cache Statistiques de SQL Utilisez le Générateur de profils SQL Server Pour surveiller les événements Pour tester chaque instruction d'une procédure stockée

Conseils pratiques Concevez une procédure stockée par tâche Effectuez la vérification d'erreur des tâches et de la logique d'entreprise avant de commencer les transactions Vérifiez tous les paramètres d'entrée au début de chaque procédure stockée Vérifiez tous les paramètres d'entrée au début de chaque procédure stockée Utilisez les mêmes paramètres de connexion pour toutes les procédures stockées Pour dissimuler le texte des procédures stockées, activez l'option WITH ENCRYPTION

Atelier 12.2 : Création de procédures stockées avec des paramètres

Contrôle des acquis Présentation des procédures stockées Création, exécution et modification des procédures stockées Utilisation de paramètres dans les procédures stockées Exécution de procédures stockées étendues Traitement des messages d'erreur Performances