Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Introducción al Modelo Relacional de Bases de Datos: Características y Avances - Prof. Rab, Apuntes de Sistemas de Gestión de Bases de Datos

Una introducción al modelo relacional de bases de datos, sus principios básicos y los avances que incorpora en comparación con modelos anteriores. Se incluye una breve evolución histórica, la representación de datos mediante tuplas y dominios, reglas de integridad y operaciones relacionales.

Tipo: Apuntes

2012/2013

Subido el 04/11/2013

ximo112
ximo112 🇪🇸

4.5

(2)

9 documentos

1 / 19

Documentos relacionados


Vista previa parcial del texto

¡Descarga Introducción al Modelo Relacional de Bases de Datos: Características y Avances - Prof. Rab y más Apuntes en PDF de Sistemas de Gestión de Bases de Datos solo en Docsity! TEMA 3. EL MODEL RELACIONAL.  TEMARI 1. Introducció. Llenguatges relacionals comercials 2. Descripció del model relacional 2.1. Relació. Domini. Atribut 2.2. Definició formal de relació 2.3. Classes de relacions 2.4. Claus 2.5. Restriccions. Inherents i semàntiques 2.6. Valors nuls 1 Introducció Llenguatges. .    relacionals comercials INTRODUCCIÓ • Els avenços més importants que el model de dades relacional incorpora respecte als  models de dades anteriors són: S ill i U if it t– enz esa    n orm a – Fonamentació teòrica sòlida – Independència de l’interfície d’usuari. • Les avantatges anteriorment han contribuït a que des de mitjans dels anys 80, el MR  sigui utilitzat per pràcticament la totalitat dels SGBD comercials. – Algunes de les principals empreses informàtiques del món, són en origen, empreses de SGBD:  Oracle, Sybase, Informix,.. – Els grans fabricants de software tenen el “seu” SGBD relacional: IBM DB2, Microsoft SQL  Server,.. – Existeixen molts SGBD dissenyats per PC’s i usuaris no experts: Microsoft Acces,.. • El gran èxit real del MR ha suposat que el canvi tecnològic a la següent generació sigui  evolutiu i no revolucionari: – Triomfen els SGBD Objecte_Relacionals, i – Fracassen, en general, els SGBD d’Objectes purs. DESCRIPCIÓ DEL MODEL • Estructura: ha de permetre representar la informació que ens interessa del                      món real. • Relació: és l’estructura bàsica del model relacional. Es representa  amb una taula. • Atribut: representa les propietats de la relació. Es representa amb  una columna • Domini: és el conjunt vàlid de valors que pren un atribut • Tupla: és una ocurrència de la relació Es representa amb una fila            .          . • Regles d’integritat • Operacions RELACIÓ • La relació és l’element fonamental del model relacional (d’aquí el nom del  model), és pot representar en forma de taula: Factures Codfac Data Codcli iva 3211 23/12/02 14 16 Tupla1 3212 24/07/02 8 Tupla2 3213 04/08/02 14 7 .... 3215 09/09/02 145 16 tuplam • Però, EN COMPTE!! Una relació no és una taula. Existeixen diferències  entre ambdues estructures. DOMINI • Un domini és un conjunt nominat, finit i homogèni de valors  atòmics. – El domini s’identifica per un nom – Tots els valors són del mateix tipus, i – Els valors són atòmics, no poden ser una relació, un grup repetitiu,... • Cada domini es pot definir de dos formes – Intensió (mitjançant un tipus de dades i certes restriccions com per  exemple un rang de valors) • Edat enter – Extensió (donant tots els possibles valors) • Dies de la setmana={dilluns, dimarts, dimecres, dijous, divendres,  dissabte, diumenge} ATRIBUT • És el paper (role) que juga aquest domini en la relació. • Un atribut i un domini es poden anomenar igual, però .. – Un atribut està sempre associat a una relació, mentre que un domini té  existència pròpia amb independència de les relacions.!!! – Un atribut representa una propietat d’una relació – Un atribut pren valors d’un domini • Característiques: – No es poden repetir els atributs dins d’una relació – Es poden repetir els dominis dins d’una relació              – L’atribut ha de ser univalor. RELACIÓ. NOM, CAPÇALERA • Nom: les relacions s’identifiquen per un nom            . persona • Capçalera de relació: conjunt de n parells atribut‐domini subjacent,  {(Ai:Di)}  n i=1 on n és el grau {(d i t ) ( d ) ( d d )}n :en er , nom:ca ena , a reça:ca ena RELACIÓ. COS • Cos de la relació: conjunt de m tuples, (t1,t2,...,t ) on cada                m       tupla és un conjunt de n parells atribut‐valor, {(Ai:Vij)} on Vij és el valor j del domini Di associat a l’atribut Ai El nombre de tuples m és la cardinalitat. p1={(dni:36789876),(nom:”Joan López”),(adreça:”Major 45”)} p2={(dni:37789876),(nom:”Rosa Mas”),(adreça:”Cami Ral 445”)} p3={(dni:”38889876”),(nom:”Emilia Jiménez”),(adreça:”Riera 4”)} • Mentre que la capçalera és invariant, el cós varia en el  transcurs del temps, a l’igual que la cardinalitat. CLAUS • Clau candidata (Candidate key) Importància de les claus primàries: Mecanisme d’adreçament de files d’un sistema relacional       – És un conjunt no buit d’atributs que identifiquen unívoca i mínimament cada tupla de la relació. • Una relació pot tenir més d’una clau candidata. En aquesta  situació s’ha de distingir entre: – Clau primària (Primary key) • És la clau candidata escollida per l’usuari per identificar les tuples de la  relació. • Quan només existeix una clau candidata, aquesta és la clau primària (sempre  existeix clau primària) – Claus alternatives o secundàries (Alternative key) • Són les claus candidates no escollides com a primària ...CLAUS... • Criteris per escollir la clau primària – Escollir la clau candidata        • Amb el mínim nombre d’atributs • Amb menys canvis en el futur • Amb el mínim nombre de caràcters – La clau primària ha de mantenir sempre l’unicitat – La clau primària ha de ser d’utilització universal, i estar el més propera  possible al punt de vista de l’usuari. – En el cas de no trobar cap clau primària adequada és possible crear‐ne una  anomenada substituta o artificial (surrogate) que es forma normalment a  partir d’una seqüència numèrica. Una BD relacional és una col.lecció de relacions (o taules en termes  d’implementació); Però .... llavors. Representa la figura una BD relacional? Resposta: NO, doncs una BD (relacional o d’un altre tipus) és una col.lecció  de dades interrelacionades. Necessitem associar unes relacions amb d’altres S’anomena Clau foràna o estrangera d’una relació R2 a un conjunt no buit d’atributs amb valors que coincideixen amb els valors de la clau primària d’una relació R1. La clau foràna i la clau primària corresponent han d’estar definides sobre els mateixos dominis. Les relacions R1 i R2 no necessàriament han de ser les mateixes. No necessàriament ha de ser la clau primària. Pot ser una clau candidata ser_cap cap subordinat client codcli nom adreça codpostal codpoble <pi> Number (5) Variable characters (50) Variable characters (50) Variable characters (5) Variable characters (5) <M> codcli <pi> venedor codve nom adreça codpostal codpoble <pi> Number (5) Variable characters (50) Variable characters (50) Variable characters (5) Variable characters (5) <M> codven <pi> realitzarassignar constar factura codfac data iva dto <pi> Number (6) Date Number (2) Number (2) <M> codfac <pi> l inia linia qtt preu dto <pi> Number (2) Number (5) Number (7,2) Number (2) <M> linia <pi> ser_de article codart descripcio preu stock stockmin <pi> Variable characters (8) Variable characters (40) Number (7,2) Number (6) Number (6) <M> codart <pi> codve = ven_codve Upd(R); Del(R);cpa client codcli nom adreça codpostal codpoble N5 VARCHAR(50) VARCHAR(50) VARCHAR(5) VARCHAR(5) <pk> venedor codve ven_codve nom adreça codpostal codpoble N5 N5 VARCHAR(50) VARCHAR(50) VARCHAR(5) VARCHAR(5) <pk> <fk> codcli = codcli Upd(R); Del(R);cpa codve = codve Upd(R); Del(R);cpa codfac = codfac Upd(C); Del(C);cpa factura codfac codcli codve data iva dto N6 N5 N5 DATE N2 N2 <pk> <fk1> <fk2> linia codfac linia codart qtt preu dto N6 N2 VARCHAR(8) N5 N7,2 N2 <pk,fk1> <pk> <fk2> codart = codart Upd(C); Del(R);cpa article codart descripcio preu stock stockmin VARCHAR(8) VARCHAR(40) N7,2 N6 N6 <pk> REGLES D’INTEGRITAT  INTEGRITAT REFERENCIAL • Es refereix a les claus foranes. “Si en una relació hi ha alguna clau forana, els seus valors han de coincidir  amb valors de la clau primària a la que fa referència, o bé, cal que siguin tots  valors nuls”. • La Base de dades no pot contenir valors de clau forana sense concordança. – Per a qualsevol valor no nul de la clau forana existeix un valor associat a la clau                                  primària de la relació objectiu. REGLES PER LES CLAUS FORANES • La regla d’integritat referencial ens descriu el que és un estat il.legal de la  base de dades, però no ens diu com podem evitar‐lo!! • Què cal fer si ens trobem en un estat legal, i arriba una operació que ens  condueix a un estat il.legal??. Tenim dues possibilitat: – Rebutjar l’operació – Acceptar l’operació i realitzar operacions addicionals compensatòries que ens  condueixin a un estat legal. • És tasca del dissenyador de la base de dades indicar quines operacions cal  rebutjar i quines necessiten operacions addicionals, o operacions de  compensació. REGLES PER A LES CF. ACCIONS  REFERENCIALS • Regla d’esborrat: Què fer si s’intenta esborrar la tupla a la que fa  referencia  una clau forana??? – Restringir – Propagar – Anul.lar: Té sentit que la clau forana accepti nuls?? • Regla de modificació: Què fer si s’intenta modificar el valor de la clau  primària de la tupla a la que fa referència una clau forana??? – Restringir – Propagar – Anul.lar: Té sentit que la clau forana accepti nuls?? RESTRICCIONS SEMÀNTIQUES • Clau primària. PRIMARY KEY – Permet declarar un atribut o conjunt d’atributs com a clau primària  d’una relació Permet definir claus primàries  .        . • Clau alternativa. UNIQUE – Permet especificar que els valors d’un conjunt d’atributs no es pot  repetir en una relació. Permet definir claus alternatives. • Obligatorietat. NOT NULL – Permet definir l’obligatorietat d’un o més atributs indicat que el  conjunt d’atributs no admet el valor nul • Integritat referencial. FOREIGN KEY – Opcions d’esborrat i actualització • Verificació. CHECK • Asserció. ASSERTION • Disparador. TRIGGER CHECK • Comprova en tota operació d’actualització, si la condició és certa o falsa,  si és falsa rebutja l’operació. • Es defineix sobre un únic element de la BD: domini,relació... • La restricció s’inclou en la definició de l’element(dins d’un CREATE  TABLE). • Pot tenir nom o no CHECK N_HORES>30 en CURS_DOCTORAT ASSERCIÓ • Actua de forma idèntica a l’anterior, però pot afectar a varis elements de  la BD (per ex. a dues relacions diferents). • La definició no va lligada a un element, ha de tenir nom • És un element més de la BD CREATE ASSERTION CONCEDEIX_SOL.LICITA AS CHECK (SELECT cod_estudiant, cod_beca FROM CONCEDEIX) IN SELECT cod estudiant, cod beca _ _ FROM SOL.LICITA));
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved