• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Model relacional
 

Model relacional

on

  • 830 views

Teoria del Model Relacional

Teoria del Model Relacional

Statistics

Views

Total Views
830
Views on SlideShare
829
Embed Views
1

Actions

Likes
0
Downloads
0
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Model relacional Model relacional Presentation Transcript

    • C7 – Sistemes Gestors de Bases de Dades Relacionals UD1- Model Relacional IES Camí de Mar (Calafell) Autors: Toni Ruiz i Sònia Monzó
    • NA1. Característiques i estructura del model relacional
      • Desenvolupat per E.F. Codd per a IBM, a finals dels anys seixanta.
      • Fins als vuitanta no es comercialitzen SGBD relacionals amb rendiments acceptables.
      Objectius
      • Independència física de les dades .
      • Independència lògica de les dades.
      • Flexibilitat a l'hora de presentar dades als usuaris, de la forma més adient, segons l'aplicació utilitzada.
      • Uniformitat en la presentació de les estructures lògiques de les dades (taules), que facilita la manipulació de la B.D.
      • Senzillesa . Les anteriors característiques més els llenguatges sencills fan que aquest model sigui fàcil d'utilitzar.
    • NA1. Característiques i estructura del model relacional 12 Regles de Codd (1985) (I)
      • Regla d'informació: Tota la informació d'una BDR està representada mitjançant valors en taules.
      • Regla d'accés garantit : Per a tots i cadascun de les dades (valors atòmics) d'una BDR es garanteix que són accessibles a nivell lògic utilitzant una combinació de nom de taula, valor de clau primària i nom de columna.
      • Tractament sistemàtic de valors nuls : Els valors nuls (que són distints de la cadena buida, blancs, 0, ...) se suporten en els SGBD totalment relacionals per a representar informació desconeguda o no aplicable de manera sistemàtica, independentment del tipus de dades.
    • NA1. Característiques i estructura del model relacional 12 Regles de Codd (1985) (II)
      • Catàleg en línia dinàmic basat en el model relacional: La descripció de la BD es representa a nivell lògic, de la mateixa manera que les dades normals, de forma que els usuaris autoritzats poden accedir amb el mateix llenguatge relacional.
      • Regla de de subllenguatge complet de dades: Un sistema relacional ha de suportar diversos llenguatges i diverses maneres d'ús de terminal (ex: emplenar formularis). No obstant això, ha d'existir almenys un llenguatge les sentències del qual siguin expressables, mitjançant una sintaxi ben definida, com cadenes de caràcters.
    • NA1. Característiques i estructura del model relacional 12 Regles de Codd (1985) (III)
      • Regla de de subllenguatge complet de dades (cont): Aquest llenguatge ha de suportar:
        • Definició de dades
        • Definició de vistes
        • Manipulació de dades (interactiva i per programa)
        • Restriccions d'integritat
        • Autoritzacions
        • Gestió de transaccions (iniciar, realitzar, desfer) (Begin, commit, rollback).
      • Regla d'actualització de vistes : Totes les vistes, que són teòricament actualitzables, es poden actualitzar pel sistema.
    • NA1. Característiques i estructura del model relacional 12 Regles de Codd (1985) (IV)
      • Inserció, actualització i esborrat d'alt nivell: La capacitat de manejar una relació base o derivada com un sol operant s'aplica no només a la recuperació de les dades (consultes), si no també a la inserció, actualització i esborrat de dades.
      • Independència física de les dades: Els canvis que es realitzen tant en la representació del emmagatzematge, com en els mètodes d'accés no han d'afectar ni als programes d'aplicació ni a les activitats amb les dades.
      • Independència lògica de les dades: Els canvis que es realitzen sobre les taules de la BD no han d'afectar ni als programes d'aplicació ni a les activitats amb les dades.
    • NA1. Característiques i estructura del model relacional 12 Regles de Codd (1985) (V)
      • Independència de la integritat: Les restriccions d'integritat específiques d'una BDR s'han de definir mitjançant un subllenguatge de dades relacional i emmagatzemar-se al catàleg de la BD.
      • Independència de distribució: Un SGBD és independent de la distribució (transparència de localització, fragmentació i replicació).
      • Regla de no subversió: Si un sistema relacional té un llenguatge de baix nivell (una fila cada vegada) no es pot utilizar per tal de saltar-se (subvertir) o evitar les regles d'integritat expresades en el llenguatge relacional d'alt nivell (varies files a la vegada).
    • NA1. Característiques i estructura del model relacional El model relacional, com tot model de dades, s'ocupa de:
      • Estructura de les dades: representació en un format adequat per a l'usuari.
      • Integritat de les dades: mesures de seguretat per garantir que la informació continguda en la BD sigui correcta, complint les regles d'integritat.
      • Manipulació de les dades: altes, baixes i modificacions de dades.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS:
      • Relació(taula): és l'element bàsic del model relacional i es representa amb una taula.
      • Atribut (columna): són les propietats de la relació i es representen mitjançant columnes en les taules.
      • Tuples (fila): cadascuna de les ocurrències de la relació (registres de la taula). Es representen amb files.
      • Domini: conjunt finit de valors homogenis (del mateix tipus) i atòmics (indivisibles), que pot agafar un atribut.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Domini
      • Els valors continguts en una columna pertanyen a un domini, previament definit.
      • Tots els dominis tenen un nom i un tipus de dades associat.
      Tipus:
      • Generals: Aquells els valors dels quals està entre un màxim i un mínim.
      Ex1: dom_nom: cadena de 15 caràcters Ex2: dom_edat: conjunt d'enters de 3 dígits
      • Restringits: són els que pertanyen a un conjunt de valors específic.
      Ex: dom_sexe: ('M', 'F')
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Atribut
      • Un atribut és el rol que ocupa un domini en una relació.
      • Representa l'ús d'un domini per a una determinada relació. Aporta un significat semàtic a un domini.
      • Un atribut pren valors dintre d'un domini.
      • Distints atributs d'una relació, i fins i tot de diferents relacions, poden prendre valors dintre d'un mateix domini.
      Ex1: NOM: dom_nom Ex2: CODIDEP: dom_codidep EX3: NOM_CIUTAT: dom_nom
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Relació Relació:EMPLEAT ( codi , nom, cognoms, adreça, ciutat, telefon, codidep) tuples atributs
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Relació Conceptes:
      • Cardinalitat: és el número de files de la taula.
      Ex: A l'exemple anterior és 3.
      • Grau : és el número de columnes de la taula.
      Ex: A l'exemple anterior és 7.
      • Valor: intersecció entre una fila i una columna.
      Ex: Valors de la taula EMPLEAT: 10, JOAN...
      • Valor nul: representa l'absència d'informació.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Relació Definicions formals:
      • Capçalera: conjunt fix de parells atribut:domini, {( A 1 :D 1 ),..,(A n :D n )} , on cada atribut correspon a un domini i tots els atributs són diferents. El grau de la relació és n.
      Ex: {( CODI:Dom_codi), (NOM:Dom_nom),..,(CODIDEP:Dom_codidep)}
      • Cos: conjunt variable de tuples. Cada tupla és un conjunt de parells atribut:valor. t= {( A 1 :V 1 ),..,(A n :V m )} . La cardinalitat de la relació R és m.
      Ex: t1= {( CODI:400001), (NOM:JOAN),..,(CODIDEP:10)}
      • Esquema: està format pel nom de la relació i la capçalera. R({A1:D1},..,{An:Dm}) .
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ELEMENTS BÀSICS: Relació Propietats de les relacions:
      • Cada relació té un nom i és diferent de la resta.
      • Els valors dels atributs són atòmics (només un valor). Es diu que les relacions estan normalitzades.
      • No hi ha dos atributs amb el mateix nom.
      • Els atributs no estan ordenats.
      • Cada tupla és diferent a la resta, no hi ha duplicades.
      • Les tuples no estan ordenades, és irrellevant.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL CLAUS PRÒPIES D'UNA TAULA
      • Clau : atribut (o conjunt d'ells) que identifica de forma única les tuples d'una relació.
      • Clau candidata : conjunt d'atributs que identifica de forma única i mínima (atributs necessaris per identificar) cada tupla d'una relació.
      • Clau primària : Aquella clau candidata que és escollida per identificar les tuples de la relació (d'entre les candidates). No pot contenir valors nuls .
      • Clau alternativa: aquelles claus candidates que no s'han escollit com a primàries.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL CLAU FORANA (ALIENA):
      • S'anomena clau forana d'una relació R1 al conjunt d'atributs els valors dels quals han de coincidir amb valors de la clau primària d'altra relació R2 .
      • És un terme que fa referència als camps que s’afegeixen a una taula per a que quedi constància de la seva associació amb una altra taula. El camp que s’afegirà com a clau forana és el que actua com a clau primària de la taula relacionada.
      • Aquesta clau és molt important per garantir la integritat de les dades del model relacional.
    • NA1. Característiques i estructura del model relacional ESTRUCTURA DEL MODEL RELACIONAL ESQUEMA DE LA BASE DE DADES:
      • Una base de dades és un conjunt de relacions normalitzades.
      • Per a representar un esquema d'una BD s'ha de donar: el nom de les seves relacions, els atributs d'aquestes, els dominis sobre els quals es defineixen aquests atributs, les claus primàries i les claus alienes.
      • Base de Dades d'empleats
      DEPARTAMENT ( NUMDEP , NOMDEP, PRESSUPOST) EMPLEAT ( NUMEMP , NOMEMP, NUMDEP, SOU) EMPLEAT DEPARTAMENT Departament al que pertany l'empleat NUMDEP
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (I):
      • Son mecanismes que permeten a l'usuari representar de la forma més fidel possible la semàntica del món real.
      • TIPUS
            • 1. Clau primària (PRIMARY KEY) : permet declarar un o varis atributs com clau primària d'una relació.
            • 2. Unicitat (UNIQUE): permet definir claus alternatives. Els valors dels atributs no poden repetir-se.
            • 3. Obligatorietat (NOT NULL): permet declarar atributs que no admeten valors nuls.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (II):
      • TIPUS
            • 4. Integritat referencial o clau aliena (FOREIGN KEY): s'utilitza per enllaçar relacions (taules) d'una base de dades. La integritat referencial indica que els valors de la clau aliena en la relació fill es corresponen amb els de la clau primària en la relació pare.
            • Quan definim les claus alienes, hem de tenir en compte les operacions d'esborrat i actualització que es realitzen sobre les tuples de la relació referenciada.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (III):
      • TIPUS
            • Les possibilitats que tenim, quan definim la clau aliena són les següents:
            • - CASCADE: Esborrat i/o modificació en cascada. L'esborrat o modificació d'una tupla en la relació pare ocasiona l'esborrat o modificació de les tuples relacionades en la relació filla.
            • - RESTRICT: No és possible realitzar l'esborrat o la modificació de les tuples de la relació pare si existeixen tuples relacionades amb la relació filla.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (IV):
      • TIPUS
            • - SET NULL: Si es produeix l'esborrat o modificació de tuples en la taula principal, esta restricció permet posar les tuples referenciades en la taula filla a NULL.
            • - SET DEFAULT: En aquest cas, el valor que es posa en les claus alienes de la taula filla és el valor per defecte que s'ha especificat en la creació de la taula.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (V):
      • TIPUS
            • 5. Restriccions de validació (CHECK): Permet especificar condicions que han de complir els valors dels atributs. Quan es realitza una inserció o actualització es comproven els valors de la condició.
            • 6. Assercions (ASSERTION): Aquestes restriccions poden afectar a dos o més taules, a diferència de CHECK, que només afecta a una única relació. La condició s'estableix sobre elements de distintes relacions.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (VI):
      • EXEMPLE CREACIÓ TAULES AMB RESTRICCIONS:
      CREATE TABLE DEPARTAMENT ( NUMDEP number (3) NOT NULL DEFAULT 100, NOMDEP varchar2(15) UNIQUE , PRESSUPOST number(6,2) CONSTRAINT CK1_DEP CHECK (PRESSUPOST > 0.0), CONSTRAINT PK_DEP PRIMARY KEY (NUMDEP) ) ; CREATE TABLE EM PLEAT ( NUMEMP number (3) NOT NULL , NOMEMP varchar2(25) UNIQUE , NUMDEP number (3) NOT NULL , SOU number(6,2) CONSTRAINT CK1_EMP CHECK (SOU > 500), CONSTRAINT PK_DEP PRIMARY KEY (NUMEMP), CONSTRAINT FK_DEP FOREIGN KEY (NUMDEP) REFERENCES DEPARTAMENT(NUMDEP) ON DELETE RESTRICT ) ;
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (VII):
      • TIPUS
            • 7. Disparadors (TRIGGER): Aquestes restriccions són procedimentals (la resta que hem vist són declaratives). Procedimental: indica al computador que ha de fer a través d'instruccions. L'usuari podrà especificar una sèrie d'accions distintes per a una determinada condició.
    • NA1. Característiques i estructura del model relacional RESTRICCIONS DEL MODEL RELACIONAL RESTRICCIONS SEMÀNTIQUES O D'USUARI (VIII): EXEMPLE DISPARADOR : Aquest audita les operacions d'inserció i esborrat en la taula EMPLEAT. CREATE OR REPLACE TRIGGER audita_act_emp
            • BEFORE INSERT O DELETE ON EMPLEAT EACH ROW
            • BEGIN
              • IF DELETING THEN
              • INSERT INTO AUDITAEMPLE VALUES
      (TO_CHAR(sysdate, 'DD/MM/YY*HH24:MI*') || :OLD.EMP_NUM || OLD.EMP_NOM || ' * ESBORRAT ' ); ELSIF INSERTING THE INSERT INTO AUDITAEMPLE VALUES (TO_CHAR(sysdate, 'DD/MM/YY*HH24:MI*') || :NEW.EMP_NUM || NEW.EMP_NOM || ' * INSERCIO ' ); END IF; END;