Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015.

Slides:



Advertisements
Présentations similaires
1 Bases de donn é es relationnelles. 2 Introduction au mod è le relationnel les donn é es sont repr é sent é es par des tables, sans pr é juger de la.
Advertisements

CONCEPTION DES BASES DE DONNÉES: modèle entités-associations
Développement dapplication avec base de données Semaine 3 : Windows Form avec Entité Framework Automne 2013.
Module 2 : Préparation de l'analyse des performances du serveur
Développement dapplication avec base de données Semaine 10 : WCF avec Entité Framework Automne 2013.
Module : Pages Web Dynamiques (Production Électronique Avancée)
Développement d’application avec base de données Semaine 6 : Windows Form avec Entité Framework Automne 2014.
3 Copyright © Oracle Corporation, Tous droits réservés. Créer des fonctions.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
L A C OMPRESSION DE DONNÉES Par Bettaver Stéphane et Guérandel Quentin Février 2013.
Initiation à la navigation sur Internet et à l’utilisation de la Plate-forme l’enseignement à distance Moodle » Issa saley.
JI Les systèmes d’autorisation et d’authentification dans AMI Fabian Lambert.
Création d’un site WEB 1 – Un site WEB c’est quoi ? 2 – Questions à se poser avant la construction d’un site WEB 3 – Principes de fonctionnement d’un site.
Cours de Mme Dominique Meganck - ICC - IFC MICROSOFT ACCESS Un système de gestion de bases de données...
Séminaire SoSySec 25 mars 2016page 1 Processus de développement de système contraint par des préconisations de sécurité d'un SI urbanisé Jacques Simonin.
PPE PROJET GBS. But de ce PPE  Le but de ce PPE était de créer un site internet dynamique pour la société GSB, pour cela nous avons du :  Reprendre.
Mediator 9 - Un outil de développement multimédia 3AC Techno/Informatique.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 10 Support de cours rédigé par Bernard COFFIN Université.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 5 Support de cours rédigé par Bernard COFFIN Université.
Les outils de tests 1 1 CHAKI Abderrazak - ETIENNE Jonathan - TOUMI Nacereddine - VACHER Nicolas.
1 Les bases de données Séance 7 Les fonctions avancées : Opérateurs ensemblistes, Sous-requêtes et transactions.
Maths en Jean : Nager dans le brouillard. Présentation du sujet Une personne part du bord de la plage et nage 500 mètres en ligne droite dans une direction.
Tutoriel n°4 : Administration Technique Formation : profil Administrateur.
Développement d’application avec base de données Semaine 8 : WPF avec Entité Framework Automne 2015.
Géomatique Systèmes de projection Types de données Applications Qu’est-ce qu’un SIG ? Présentation de la géomatique La géomatique regroupe l'ensemble des.
Chapitre 4 Gestion des disques Module S41. Plan du cours 1. Utilisation de l'outil Gestion des disques 2. Utilisation des disques de base 3. Utilisation.
Exposé ppe1 IMPRESS = POWER POINT SOUS OPEN OFFICE et LIBRE OFFICE FONCTIONS PRINCIPALES.
Chapitre 6 Gestion et analyse du système DNS Module S43 1.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 1 Support de cours rédigé par Bernard COFFIN Université.
INTRANET.SANTEFRANCAIS.CA ANTOINE DÉSILETS Coordonnateur au réseautage et Agent de communication Formation sur l’utilisation de l’Intranet 1.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 6 Support de cours rédigé par Bernard COFFIN Université.
FACTORY systemes Module 5 Page 5-1 Les outils clients Wonderware FORMATION InSQL 7.0.
1 Les logiciels en général sont classés en deux familles:  Logiciels de base  Logiciels d’applications (applications) 2.
Initiation aux bases de données et à la programmation événementielle Outil de création des tables Support de TD rédigé par Bernard COFFIN Université Paris.
Projet Personnel (Epreuve 6) Projet réalisé dans le cadre de mon épreuve E6 au sein de mon alternance au conseil départemental du val de marne Arnaud PICANO.
Chapitre 7 Résolution de noms NetBIOS à l'aide du service WINS Module S43 1.
Automates Programmables Industriels ( ITEEM 2004 ) I.T.E.E.M de BEAULIEU Enseignante : Mme RECHID CHAPITRE 7 Le Logiciel PL7 Présentation - Ergonomie Les.
Les méthodes de tests Les grands principes pour réaliser des tests efficaces.
Développement d’application avec base de données Semaine 9 : Code First avec Entité Framework Automne 2015 Tous le matériel provient de :
Développement d’application avec base de données Semaine 6 : Windows Form avec Entité Framework Automne 2015.
Chapitre 6 Déploiement et gestion des logiciels à l'aide d'une stratégie de groupe Module S44.
CATALOGUE DES FORMATIONS Office Fondamentaux 2015 Formateur : KAMAL Laiss.
Introduction à la Programmation Orientée Objet H.GATI.
METHODE DES CHAÎNONS Méthode permettant d’implanter des postes de travail dans les usines ou entrepôts. Optimisation recherchée Gain sur le temps de fabrication.
Eric Fede - 1 GESTION DES PRIORITES SUR LA GRILLE.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 7 Support de cours rédigé par Bernard COFFIN Université.
 Introduction  Les protocoles de sécurité  Les attaques possibles  Conclusion.
On the analysis of CMMN expressiveness: revisiting workflow patterns Renata Carvalho Hafedh Mili.
« crédits bancaires octroyés aux PME Gabonaises en 2012 et 2013 Difficultés rencontrées solutions préconisées » 1.
Informatique 1A Langage C 6 ème séance 1. Objectifs de la séance 6  Allocation dynamique de mémoire  Application à la création de tableaux 2.
Déploiement de la solution de supervision FAN au sein de société CBI et de ses filiales au Maroc et en Afrique.
Informatique 2A Langage C 3 ème séance.
L'objectif permettre aux utilisateurs d'acquérir ou d'actualiser des compétences directement utilisables dans leur travail. KARA CHEIKH Cite.
IFT359 – Programmation fonctionnelle Thème #8 Création de nouvelles formes syntaxiques 1.
Cours de Langage C Les structures
Introduction Depuis le début des sites web les urls sont utilisé pour la navigation. Avec l’arrivée des bases de données, les urls ont prit de l’importance.
Présenté par  Samira BELHORMA  Imane ZEHHAF. Introduction I. Définitions II. Quand et comment évaluer une compétence? III. Le contexte d’évaluation.
Paramètres S Rappels de théorie des circuits
Chapitre 9 Gestion des maîtres d'opérations
INSCRIPTIONS SPORTIVES
1 Initiation aux bases de données et à la programmation événementielle Construction d’un état Support de TD rédigé par Bernard COFFIN Université Paris.
Développement d’application avec base de données Semaine 2: Requête avec l’Entity Data Model Automne 2015.
Les Systèmes de Paiements Électroniques. Les Systèmes de paiements Électroniques Moyens de paiements « traditionnels » Nécessite double coïncidence des.
Persistance en bases de données O.Legrand G. Seront.
AUTOMATISME Chapitre 2: Le GRAFCET.
Colloque LCG France14-15 mars SURVEILLANCE ET GESTION D’INCIDENTS Cécile Barbier (LAPP)
Chapitre 5 Administration des accès aux objets dans les unités d'organisation Module S42.
Développement d’application avec base de données Semaine 1 : Présentation d’Entity Framework Automne 2015.
Persistance des données O.Legrand. Persistance developer.android.com/guide/topics/data/data-storage.htmll Plusieurs moyens sur le mobile: –Système de.
Transcription de la présentation:

Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015

 Modifications à l’aide de l’Entité Framework  Les procédures stockées  Définition des comportements avec les procédures stockées Plan de présentation

 Une fois la recherche effectuées, nous allons vouloir altérer la valeur de l’enregistrement trouvé et la sauvegarder dans la base de données.  Entité Framework nous offres des méthodes qui vont s’occuper de générer automatiquement(context.SaveChanges();) les requêtes qui altérerons les données dans la base de données. Introduction

 Pour chaque entrée d’une entité instancié, un objet de type DbEntityEntry est créée.  Cet objet contiendra entre autre  l’état(State: Unchanged, Detached, Modified, Added, or Deleted)  la valeur originale  la nouvelle valeur. Cet objet surveillera seulement les propriétés scalaires des entités.  Voir : context.ChangeTracker.Entries() Mais quoi sauvegarder?

 Par conséquent, l’entité Framework générera une requête seulement pour les éléments qui nécessitent une mise à jour.  La méthode SaveChanges() génèrera la(les) requêtes appropriés. Mise à jour

Sauvegarder un enregistrement modifié exec sp_executesql N'update [dbo].[Contact] set [FirstName] [ModifiedDate] where ([ContactID] @1=' Code: Code généré lors du SaveChanges:

Modifier plusieurs entités exec sp_executesql N'update [dbo].[Address] set [Street1] where ([addressID] Main exec sp_executesql N'update [dbo].[Contact] set [FirstName] ([ContactID] Code: Code généré lors du SaveChanges:

Ajouter un enregistrement

Ajouter des enregistrements avec une relation parent enfant

Supprimer un enregistrement

 Faite la première partie des exercices Exercices

 Qu’est-ce qu’une procédure stocké?  une procédure stockée (ou stored procedure en anglais) est un ensemble d'instructions SQL pré-compilées, stockées dans une base de données et exécutées sur demande par le SGBD qui manipule la base de données.SQLbase de donnéesSGBD Les procédure stockés

 Intérêts  simplification : code plus simple à comprendre  rapidité : moins d'informations sont échangées entre le serveur et le client  performance : économise au serveur l'interprétation de la requête car elle est précompilée  sécurité : les applications et les utilisateurs n'ont aucun accès direct aux tables, mais passent par des procédures stockées prédéfinies Les procédure stockés

 Concrètement? Pourquoi utiliser les procédures stockées plutôt qu’une commande T-SQL ?  Dès lors qu’on appelle une procédure stockée, on a simplement besoin de spécifier son nom et de lui adjoindre la valeur de ses paramètres. C’est donc moins coûteux en termes de quantité de données qu’une commande T-SQL complète à envoyer à l’instance SQL Server, si courte soit elle. Dès lors cela réduit le trafic réseau entre les applications et le serveur.  Lorsqu’on crée une procédure stockée, celle-ci est compilée en un plan qui demeure dans le cache de procédures, ce qui réduit considérablement le coût de calcul du plan d’une requête, gourmand en ressources processeur.  L’exécution de requêtes par l’instance elle-même peut s’avérer moins coûteuse pour l’application mais aussi pour le serveur de bases de données. En effet, si nous devons par exemple insérer une valeur binaire dans une table à travers une requête soumise directement par l’application, il faut dans un premier temps convertir la valeur binaire en une chaîne de caractères, ce qui double donc sa taille. Lorsque l’instance SQL Server reçoit la requête, elle doit reconvertir la valeur chaîne de caractère vers la valeur binaire, ce qui représente pour les deux partis un surcoût. L’appel d’une procédure stockée élimine ce problème, puisque les valeurs des paramètres sont conservées sous forme binaire depuis l’application jusque dans les pages de la table de la base de données.  Le second plus gros avantage à mon sens après le cache de procédures est que le code qu’elles encapsulent, la logique de celles-ci, peut être maintenu sans modifier une seule ligne de code de l’application cliente, s’il n’est pas besoin de modifier les paramètres et la structure de l’ensemble de données produit. Les procédures stockés

Ajoutons les procédures stockés à l’entité Data Modèle

 Les procédures stockés sont apparues(voir le fichier).  Utiliser une procédure stockés  Attention, fonction et procédure stockés sont souvent utilisées comme synonymes Voir le fichier SSDL

 Il faut aller sur le « mapping » de l’entité Lier les procédures stockés aux comportement de l’entité

 Il est possible de définir la valeur de retour.  Par exemple, lorsqu’on crée un nouvel enregistrement, il peut être pratique de connaître la clé.  Autrement la clé ne sera pas mise à jour. Lier les procédures stockés aux comportement de l’entité

 Faite la deuxième partie des exercices Exercice

 Modifications à l’aide de l’Entité Framework  Les procédures stockées  Définition des comportements avec les procédures stockées Conclusion

Questions?