Sunteți pe pagina 1din 4

Oracle 10g

mircoles, 13 de julio de 2011


RELACIONES
Para poder relacionar tablas primeramente tenemos que identificar nuestras claves primarias, foranea de nuestras tablas. 1. Clave primaria !rimar" #e" Es una columna o un conjunto de columnas que identifican unvocamente a cada fila. Debe ser nica, no nula y obligatoria. Como m !imo, podemos definir una clave primaria por tabla. Esta clave se puede referenciar por una columna o columnas. Cuando se crea una clave primaria, autom ticamente se crea un ndice que facilita el acceso a la tabla. "ormato de restricci#n de columna$ C%E&'E '&()E *+,(%E-'&()& .C+)1 '/P+-D&'+ 0C+*1'%&/*' *+,(%E-%E1'%/CC/+*2 P%/,&%3 4E3 C+)5 '/P+-D&'+ 6 70'&()E1P&CE E1P&C/+-DE-'&()&28 "ormato de restricci#n de tabla$ C%E&'E '&()E *+,(E%-'&()& .C+)1 '/P+-D&'+, C+)5 '/P+-D&'+, 6 0C+*1'%&/*' *+,(%E%E1'%/CC/+*2 P%/,&%3 4E3 .C+)9,*& 0,C+)9,*&27, 6 70'&()E1P&CE E1P&C/+-DE-'&()&28 Claves aje$as %oreig$ &e" Esta formada por una o varias columnas que est n asociadas a una clave primaria de otra o de la misma tabla. 1e pueden definir tantas claves ajenas como se precise, y pueden estar o no en la misma tabla que la clave primaria. El valor de la columna o columnas que son claves ajenas debe ser$ *9)) o igual a un valor de la clave referenciada .regla de integridad referencial7. "ormato de restricci#n de columna$ C%E&'E '&()E *+,(%E-'&()&

.C+)9,*&1 '/P+-D&'+ 0C+*1'%&/*' *+,(%E%E1'%/CC/+*2 %E"E%E*CE1 *+,(%E'&()& 0.C+)9,*&72 0+* DE)E'E C&1C&DE2 6 70'&()E1P&CE E1PEC/+-DE-'&()&28 "ormato de restricci#n de tabla$ C%E&'E '&()E *+,(%E-'&()& .C+)9,*&1 '/P+-D&'+, C+)9,*&5 '/P+-D&'+, 6 0C+*'%&/*' *+,(%E%E1'%/CC/+*2 "+%E/:* 4E3 .C+)9,*& 0,C+)9,*&27 %E"E%E*CE1 *+,(%E'&()& 0.C+)9,*& 0, C+)9,*&272 0+* DE)E'E C&1C&DE2, 70'&()E1P&CE E1P&C/+-DE-'&()&28 *otas$ En la cl usula %E"E%E*CE1 indicamos la tabla a la cual remite la clave ajena. ;ay que crear primero una tabla y despu<s aquella que le =ace referencia. ;ay que borrar primero la tabla que =ace referencia a otra tabla y despu<s la tabla que no =ace referencia. (orrado en cascada .+* DE)E'E C&1C&DE7$ 1i borramos una fila de una tabla maestra, todas las filas de la tabla detalle cuya clave ajena sea referenciada se borraran autom ticamente. )a restricci#n se declara en la tabla detalle. El mensaje >n filas borradas> solo indica las filas borradas de la tabla maestra. *+' *9))$ 1ignifica que la columna no puede tener valores nulos. DE"&9)'$ )e proporcionamos a una columna un valor por defecto cuando el valor de la columna no se especifica en la cl usula /*1E%'. En la especificaci#n DE"&9)' es posible incluir varias e!presiones$ constantes, funciones 1?) y variables 9/D y 131D&'E. @erificaci#n de restricciones$ C;EC4$ &cta como una cl usula A=ere. Puede =acer referencia a una o m s columnas, pero no a valores de otras filas. En una cl usula C;EC4 no se pueden incluir subconsultas ni las pseudoconsultas 131D&'E, 9/D y 91E%. No'a )a restricci#n *+' *9)) es similar a C;EC4 .*+,(%E-C+)9,*& /1 *+' *9))7 9*/?9E$ Evita valores repetidos en la misma columna. Puede contener una o varias columnas. Es similar a la restricci#n P%/,&%3 4E3, salvo que son posibles varias columnas 9*/?9E definidas en una tabla. &dmite valores *9)). &l igual que en P%/,&%3 4E3, cuando se define una restricci#n 9*/?9E se crea un ndice autom ticamente. (is'as del diccio$ario de da'os para las res'riccio$es Contienen informaci#n general las siguientes$ 91E%-C+*1'%&/*'1$ Definiciones de restricciones de tablas propiedad del usuario. &))-C+*1'%&/*'1$ Definiciones de restricciones sobre tablas a las que puede acceder el usuario. D(&-C+*1'%&/*'1$ 'odas las definiciones de restricciones sobre todas las tablas.

Creaci)$ de u$a 'a*la co$ da'os recuperados e$ u$a co$sul'a C%E&'E '&()E$ permite crear una tabla a partir de la consulta de otra tabla ya e!istente. )a nueva tabla contendr los datos obtenidos en la consulta. 1e lleva a cabo esta acci#n con la cl usula &1 colocada al final de la orden C%E&'E '&()E. C%E&'E '&()E *+,(%E'&()& .C+)9,*& 0,C+)9,*&2 70'&()E1P&CE E1P&C/+-DE-'&()&2 &1 C+*19)'&8 *o es necesario especificar tipos ni tamaBo de las consultas, ya que vienen determinadas por los tipos y los tamaBos de las recuperadas en la consulta. )a consulta puede tener una subconsulta, una combinaci#n de tablas o cualquier sentencia select valida. )as restricciones C+* *+,(%E no se crean en una tabla desde la otra, solo se crean aquellas restricciones que carecen de nombre. 5. Relacio$es 1 a muc+os , Res'riccio$es de i$'egridad re-ere$cial. C Relacio$es muc+os a muc+os. Denominado por sus siglas como$ ED%8 Este modelo representa a la realidad a trav<s de un esquema gr fico empleando los terminologa de entidades, a'ri*u'os " el enlace que rige la uni#n de las entidades esta representada por la relaci)$ del modelo. *uestra representaci#n gr fica es la siguiente$ 9n rect ngulo nos representa a las entidades8 una elipse a los atributos de las entidades, y una etiqueta dentro de un rombo nos indica la relaci#n que e!iste entre las entidades, destacando con lneas las uniones de estas y que la llave primaria de una entidad es aquel atributo que se encuentra subrayado. Ejemplos de diagramas Entidad D %elaci#n

Relaci)$ /NO a /NO


/ndicamos con este ejemplo que e!iste una relaci#n de pertenencia de uno a uno, ya que e!iste una tarjeta de circulaci#n registrada por cada autom#vil.

Relaci)$ /NO a 0/C1OS


El siguiente ejemplo indica que un cliente puede tener muc=as cuentas, pero que una cuenta puede llegar a pertenecer a un solo cliente .Decimos puede, ya que e!isten cuentas registradas a favor de m s de una persona7.

!aso del modelo E2R al modelo relacio$al


9na base de datos relacional es un conjunto de relaciones normaliEadas. Para representar el esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los atributos de <stas, los dominios sobre los que se definen estos atributos, las claves primarias y las claves ajenas. Ejemplo de una relaci#n ,uc=os a ,uc=os y su transformaci#n. Partiendo de nuestro diagrama E D %

Es3uema relacio$al
9na base de datos relacional es un conjunto de relaciones normaliEadas. Para representar el esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los atributos de <stas, los dominios sobre los que se definen estos atributos, las claves primarias y las claves ajenas. E1'9D/&*'E .C+*'%+), &PE))/D+, P%+,ED/+7 C9%1+ .*9,E%+-C9%1+, *+,(%E-C9%1+7 /*1C%/'+-E* .C+*'%+), *9,E%+-C9%1+, 1E,E1'%E, C&)/"7 En el esquema, los nombres de las relaciones aparecen seguidos de los nombres de los atributos encerrados entre par<ntesis. )as claves primarias son los atributos subrayados. El siguiente paso ser transformar el esquema relacional en 'ablas. & continuaci#n se muestra un estado .instancia7 de la base de datos cuyo esquema se acaba de definir.

S-ar putea să vă placă și