4 déc 2018 · Calcul des tuples, calcul relationnel sur les domaines (logique) • Langages insert ligne into table de chacun des tuples d'une instance de la relation Il n' est possible d'insérer un tuple dans la table vente sans spécifier la \copy classe from 'classe' Le verrouillage à effectuer est bien moindre que
Previous PDF | Next PDF |
[PDF] Bases de données relationnelles
4 déc 2018 · Calcul des tuples, calcul relationnel sur les domaines (logique) • Langages insert ligne into table de chacun des tuples d'une instance de la relation Il n' est possible d'insérer un tuple dans la table vente sans spécifier la \copy classe from 'classe' Le verrouillage à effectuer est bien moindre que
[PDF] Contraintes dintégrité - domaines - triggers - PL/SQL - LaBRI
Une contrainte peut porter sur plusieurs attributs d'un même tuple peut être une des commandes INSERT/DELETE/UPDATE dans une ou plusieurs tables Cette contrainte ne peut être prise en compte qu'en utilisant les triggers ou bien les
[PDF] Bases de Données — Module M2104 - LIPN
17 jan 2020 · Lors de l'insertion de tuples dans une relation, il arrive qu'un attribut soit inconnu ou non la valeur de l'attribut type existe bien dans la table MODÈLE Après avoir créé les tables d'une base de données, on peut y insérer des tuples, les mettre à insert into Avion values (3,'B737','British Airways'); 3
[PDF] Aller plus loin
de définir les événements déclenchant (INSERT, UPDATE, DELETE, ou TRUNCATE insérer » dans zonage_etiq un nouvel enregistrement (avec les nouvelles valeurs) 4) créer Plan rows : indique que 5 lignes sont retournées Plan width (exécute la requête), ce qui est beaucoup plus précis mais coûteux en temps
[PDF] SQL - Faculté des HEC (HEC Lausanne) - HEC UNIL
[ WHERE ] Dans le WHERE du SELECT interne, on aurait pu tout aussi bien écrire : Insérer des tuples de produits à rajouter à P : Catalogue (NP, nomP, couleur, poids, prix) INSERT
[PDF] Poly PLpgSQL-Anomyme
puissance d'un langage procédural, avec beaucoup de gains car il n'y a plus la surcharge Les valeurs dynamiques qui sont à insérer dans la requête construite Les instructions UPDATE, INSERT, et DELETE positionnent FOUND à true loop over rows must be a record or row variable » (NdT : une variable de boucle
[PDF] BASES DE DONNÉES ET MODÈLES DE CALCUL - IRIF
Bien sûr, construire une base de données ou une feuille de calcul correctes ajouter (insert), supprimer(delete) et modifier (update) les lignes d'une table Il est possible d'insérer dans une table existante des données extraites d'une ou of instances tuples in the association when the other N-1 values are fixed [UML
[PDF] Corrigé cours 5 Python : Tuples - BDRP
C Travailler avec les tuples ; comparaison avec les listes : Le tuple est bien resté constant, non au sens des valeurs, liste2 = liste1 copy( ) Donc tuple clear( ), del tuple[k], tuple remove( ), tuple append( ), tuple insert( ), tuple extend( ) →
[PDF] Amazon Redshift - AWS Documentation - Amazoncom
(6 rows) Le nom d'utilisateur rdsdb est utilisé en interne par Amazon Redshift pour vous aurez besoin du PID si vous devez annuler une requête qui prend trop de temps pour copier ( COPY) ou insérer (INSERT) dans une table externe
[PDF] Insérer des objets et les animer
[PDF] Insérer des sons dans un diaporama Powerpoint - Anciens Et Réunions
[PDF] Insérer des sons dans une applet - Espèces En Voie De Disparition
[PDF] INSERER DES SYMBOLES OU CARACTERES SPECIAUX
[PDF] Insérer images, liens, Sons, Vidéos dans un document Word
[PDF] Insérer le logo Formation Conseil Mauricie ainsi que le logo des 2
[PDF] Insérer le titre du projet - Gestion De Projet
[PDF] Insérer logo - Saint - Jumelles
[PDF] Insérer logo de Municipalité d`Ivry-sur-le-lac
[PDF] Insérer son et vidéo - Prêts Étudiants
[PDF] INSERER UN EXTRAIT VIDÉO
[PDF] INSERER UN LIEN
[PDF] Insérer un lien hypertexte dans un document
[PDF] Insérer un lien hypertexte dans un mail MAC
04/12/2018Michel Rueher1Bases de données relationnelles
Michel RueherSupports disponibles:
04/12/2018Michel Rueher2
1. IntroductionPlan
oBD ... informellementoLes grands principesoLe modèle conceptueloLe modèle relationneloPassage du modèle conceptuel au modèle relationnel
04/12/2018Michel Rueher3
BD ... informellement
... difficile à définirUn SGBD estoUn outil pour vérifier, modifier et rechercher efficacement des données dans un grand ensembleoUne interfaceentre les applications "utilisateur" et la mémoire secondaireUn SGBD comprendoUn système de gestion de fichiers (gestion du stockage physique)oUn système interne (placement et accès aux données)oUn système externe (langage de requête élaboré)
04/12/2018Michel Rueher4
Les grands principesLes 3 niveaux: physique, logique, externeoIndépendance entre représentation physique et logiqueoOffre différentes vues de la même structure
Modèle logique (modèle de données)
oLangage de définition des données (LDD)oLangage de manipulation des données (LMD)oAccès à des langages externes C,C++, Java
04/12/2018Michel Rueher5Vue externeVue externeVue externeModèle logiqueImplantation physique
Les grands principes(suite)
Intérêt de l'abstraction des données ANSI-SPARC oTotalement déclaratif(spécification abstraite )oAussi "riche" que possibleoIndépendant d'un langage de programmationoIndépendant de l'architectureoFacilitant la conception des applicationsoFacilitant l'expression de contraintes oFaciliter la gestion de l'intégrité de la base
04/12/2018Michel Rueher6
Les grands principes(suite)Fonctionnalités
oGestion du stockage secondaireoPersistanceoContrôle de concurrenceoProtection des donnéesoInterfaces homme / machineoGestion de données distribuées
04/12/2018Michel Rueher7
Les grands principes(suite): architecture d'un DBMS04/12/2018Michel Rueher8
Le Modèle Relationnel : historique
oIntroduction du modèle relationnel en 1970
par E.F. Codd (IBM San Jose)o Langages d'interrogation et de définition de vues•Langage algébrique •Calcul des tuples, calcul relationnel sur les domaines (logique)•Langages informatiques (SQL, QUEL, ...)o
Langages d'expression de contraintes
•Langages formels (logique, algébrique)•Langages ad-hoc (textuels, graphiques,...)•dépendances fonctionnelles: clés, références entre tables,...o
Le standard ANSI/SO depuis 1992
04/12/2018Michel Rueher9
Le Modèle relationnel : principes
Schéma
de base de données = ensemble de relations ->liens sémantiques implicitesoInstances de relations: tuples (tables)o contraintes sur les relations et les tuples, ØLangages déclaratifs
du premier ordre (LDD/LID de SQL)ØAlgèbre Relationnelle
, calcul sur les tuples04/12/2018Michel Rueher10
Eléments principaux de SQL (Version Ansi2)
o Langage d'interrogation et de définition de vues (LID)§ select colonnes from table where conditionoLangage de modification de données
(LMD)§ insert ligne into tableoLangage de définition de données
(LDD)§ créerles objets (tables, vues, procédures, démons, ...)§définir certaines contraintessur les tables :•clés, références externes (entre tables), contraintes locales, typage, etc ...
04/12/2018Michel Rueher11
Eléments principaux de SQL (suite)
oPrimitives pour la gestion des transactions
verrouillages , §retour en arrière, § validation oPrimitives de gestion de la sécurité
droits d'accès , privilèges, rôles§gestion des comptes04/12/2018Michel Rueher12
Eléments principaux de SQL (suite)
oRelations calculées
vues§sources stockées sur le serveur §permettent de nommer et mémoriser sur le serveur des requêtes prédéfinieso
Procédures et Fonctions
§éléments algorithmiques§déclencheurs ( triggers)•code exprimé dans le même langage procédural que pour les procédures (SQL2, PL/SQL, ...) •déclenchements opérés lors de modifications de la base
2. Le modèle relationnel
04/12/201813Michel Rueher
04/12/2018Michel Rueher14
Schémas relationnelsSchémas RelationnelsUne "table" structurée en colonnes fixes et en lignes est appelée relation..Le contenu, à un instant donné, de cette table, est une table instancede cette relationExemple: oRelation: marque(IdM, NomM, Classe,IdProp)otable marqueIdMNomMClasseIdProp122 233renault2124renault145 245sun-sparc27sun147 064 renegade24renaultUne relationn'est pas définie par des concepts positionnels ; les ligneset les colonnes peuvent être permutées.Une table instanced'une relation est un ensemble non-ordonnéde tuples(lignes). Chaque tupleest composé de valeurs correspondant aux attributs(noms des colonnes)de la relation.
04/12/2018Michel Rueher15
Schémas relationnels (suite)Relation
On appelle schéma relationnel (ou
relation ) tout ensemble fini d'attributs et de domaines : R = { (A1, dom1), ...., (An, domn) }• A = attr( R ) = {A1, ...., An} : l'ensemble des attributs de R •domi= dom (Ai) : le domaine non vide de chacun des attributs AiDomaine
•type du contenu des colonnes de la table: contraintes sur le contenu de chacun des tuples d'une instance de la relation•toujours de type scalaire (entiers, chaînes,...) : pas d'opérateur pour leur associer des types structurés04/12/2018Michel Rueher16
Schémas relationnels (suite) Exemple:
la relation MARQUEAttributs
:{IdM, NomM, Classe, IdProp}Domaines
:§dom(IdM) = [1..99 999] §dom(NomM) = ensemble de tous les mots construits sur l'alphabet {A, B, ..Z,0.. 9} (chaînes limitées à 40 caractères)§dom(Classe) = [1..30]§dom(IdProp ) = ensemble de tous les mots de moins de 100 caractères construits à sur l'alphabet {A,...,Z, a,...,z,0.. 9}
04/12/2018Michel Rueher17
Instances de relationsTuple
oSoit R une relation, ayant comme ensemble d'attributs A = {A1, ...., An}.Un tuple défini sur R est un ensemble t de valeurs v1,....,vnassociées aux attributsA1...., An, tel que
viÎ dom(Ai)oNotation §ensembliste: t = {v 1 : A 1 , ...., v n :A n§notation parenthèsée :
t = (v 1 : A 1 ; ....; v n :A n§valeur
viassociée à l'attributAidu tuple
t v i = t.A i04/12/2018Michel Rueher18
Instances de relations (suite)
Le tuple défini sur la relation MARQUE
t = {122 233:IdMarq, COCA :NomMarq,12 :Classe,CocaLtd:IdProp} peut se représenter par la ligne :IdMarqNomMarqClasseIdProp122 233COCA12CocaLtd
On a alors
t.Classe = 1204/12/2018Michel Rueher19
Table instance d'une relationTable instance de la relation R: tout ensemble de tuples (lignes) définies sur R.Instance de la relation MARQUE= {t1, t2,t3}t1 = {1222:IdM, COCA:NomM, 12 :Classe, CocaLtd:IdProp }t2= {1224 :IdM, ORANGINA:NomM, 12 :Classe,Perrier:IdProp } t3 = {1226 :IdM, PEPSI:NomM, 12 :Classe, PepsiLtd:IdProp }
04/12/2018Michel Rueher20
Contraintes
oUne relation sur l'ensemble des tuples présents dans une instanceoContraintes vérifiées à tout momentpar l'instance du schéma. ®facilitent la conception de la base ®aident au choix de représentations physiques (clés, ....)oOn peut associer à toute relation R, un ensemble
fini de contraintes, notéC= contr(R) = { C1, .... }
oContrainte = fonction booléenne pouvant s'évaluer, pour chaque instance potentielle de R04/12/2018Michel Rueher21
Langages de contraintesEnjeux des BDR :
odisposer de langages déclaratifs aussi riches que possible odisposer d'un vérificateur Si les contraintes ne pas peuvent s'exprimer en logique du premier ordre® vérifications programmées directement par l'usager, dans un langage procédural04/12/2018Michel Rueher22
Contraintes et langages (suite)
t1,t2 marque((t1.NomM=t2.NomM pasdupremierordre: p dom(IdProp ) card( {t rt.IdProp = p}) < 20 )04/12/2018Michel Rueher23
Schéma de bases de donnéesLiens Sémantiques entre tuples: ®implicites à travers les valeurs de certains attributs ... et non par adresseou pointeur comme dans des modèles navigationnels.Exempleotoute référence à une marque se fait depuis une autre relation à travers deux attributs (ici NomM, Classe) ola relation vente(NomM, Classe, Date, IdVend,IdAchat)définit les achats/ventes effectuées pour chacune des marques
04/12/2018Michel Rueher24
Schéma de bases de données (suite)
o" pointeurs visibles indépendants de tout choix d'implantation physiqueoNavigation
à travers les liens §
dans les deux sens§sans nécessité de mise en place de "pointeurs inverses"oImportance du choix d'attributs permettant d'identifier sans ambiguïté un tuple appartenant à une relation donnée
3. Algèbre relationnelle
04/12/201825Michel Rueher
04/12/2018Michel Rueher26
Algèbre relationnelle
Langage d'expressions algébriques en notation fonctionnelle :oLes variables représentent des tables,
instances de relationsoOpérateurs
(unaires, binaires, ...) sur ces tables04/12/2018Michel Rueher27Opérationsbooléennes:
Union,intersection,différence
Soient
r et s deux deuxtablesduschémaR union ,d' intersection etde différence R :r s={t|t rout s}r s={t|t rett s}r s={t|t rett s}Rem. : l'intersection peutse définir à l'aide de la soustraction :r s = r r s )04/12/2018Michel Rueher28
Opérations booléennes : Exemples
menrIdNomProp223spksun147r19renault04/12/2018Michel Rueher29Projection : définition
Opérationunaire
Soient
R unschéma, A ={A1,....,An}Í R ,unsous-ensembled'attributsde RLaprojectionsur
A d'un tuplet définisur R ,estletupledéfinisur A par: pA(t) =
p A1, ...,An(t)= {t.A1:A1, ..., t.An:An} La projection sur A d'une relationr est une instance du schéma A définie par : pA(r) =
pA1, ...,An(r) = {
pA(tr) |tr
r}04/12/2018Michel Rueher30ExempledeprojectionmarqueIdNomClasseProp122r2114renault145sparc12sun223spk12sun147 r19 13renault
pClasse,Prop(marque)ClasseProp14renault12sun13renaultLes lignes redondantes disparaissent :
pClasse,Prop(145:Id; 'sparc':Nom; 12:Classe; 'sun':Prop)= pClasse,Prop(223:Id; 'spk':Nom; 12:Classe; 'sun':Prop)= (12:Classe; 'sun':Prop)