CapituloORA12 Otros Objetos de La Base de Datos 30
-
Upload
mily-abanto -
Category
Documents
-
view
223 -
download
0
Transcript of CapituloORA12 Otros Objetos de La Base de Datos 30
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
1/30
Universidad del Cauca FIET Departamento de Sistemas
CAPITULO 12Otros Objetos de la Base de
Datos
http://www.ucauca.edu.co/index.html -
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
2/30
Universidad del Cauca FIET 12-2
Despus de este captulo, ustedestar en capacdad de! Crear, "antener # usar secuencas
Crear # "antener ndces Crear sn$n"os pr%ados # p&blcos
Objet%os
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
3/30
Universidad del Cauca FIET 12-3
Desarrollar un corto e'a"en decnco ()* pre+untas en "odo deaprendaje (Learnn+ "ode*,
selecconados en -or"a aleatora. /ealar una corta real"entac$n
de cada una de las pre+untas.
Te"a! Creatn+ Ot0er DatabaseObjects
'a"en pre%o
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
4/30
Universidad del Cauca FIET 12-4
Objetos de la base de datos
OBJETO DESCRIPCINTabla Undad bsca de al"acena"ento,
co"puesta de las # colu"nas. Puedenser creadas en cual3uer "o"ento, no senecesta denr el ta"a4o del
al"acena"ento (se reco"enda* # suestructura se puede redenr en lnea.
5sta /epresentac$n l$+ca de un subconjuntode datos de una o "s tablas
6ecuenca 7enerador de %alores nu"rcos
8ndce 9ejora el rend"ento de al+unasconsultas
6n$n"o :o"bre alternat%o de los objetos de unabase de datos
Otros Proced"entos, -uncones, dsparadores,clusters, enlaces a bases de datos #
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
5/30
Universidad del Cauca FIET 12-5
6ecuencas
Auto"tca"ente +enera n&"eros ;&ncos< s un objeto 3ue puede ser co"partdo por
"<ples usuaros 6e usa tpca"ente para crear un %alor 3ue se usa
en una colu"na 3ue dentca (lla%e pr"ara* unatabla
6r%e para re"plaar c$d+o en las aplcacones(-uncones +eneradoras de n&"eros* # por estoa#uda a ds"nur te"po en el desarrollo desolucones
6on "s ecentes cuando el %alor se accede
desde un cac0e en la "e"ora 6on +enerados # al"acenados en -or"a
ndependente de las tablas, por eje"plo, unasecuenca 3ue +enera %alores para dos tablas
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
6/30
Universidad del Cauca FIET 12-
6nta's para crear secuencasC/AT 6=U:C :o"bre6ecuenca
>I:C/9:T B? Incre"ento@>6TA/T IT Inco@>9A5ALU 9'"o E :O9A5ALUF@>9I:5ALU 9n"o E :O9I:5ALUF@>C?CL E :OC?CLF@>CAC Ta"a4o E :OCACF@G
:o"bre6ecuenca! s el no"bre del objeto(secuenca* a crear I:C/9:T B? Incre"ento! specca el %alor
con el 3ue se ncre"entaHdecre"enta el %alor dela secuenca. s un n&"ero entero
6TA/T IT Inco! specca el pr"er n&"ero(Inco es entero* 3ue se +enera con la secuenca 9A5ALU 9'"o! Dene el %alor "'"o 3ue
puede +enerar la secuenca. s un n&"ero entero
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
7/30Universidad del Cauca FIET 12-!
6nta's para crear secuencasC/AT 6=U:C :o"bre6ecuenca
>I:C/9:T B? Incre"ento@>6TA/T IT Inco@>9A5ALU 9'"o E :O9A5ALUF@>9I:5ALU 9n"o E :O9I:5ALUF@>C?CL E :OC?CLF@>CAC Ta"a4o E :OCACF@G
9I:5ALU 9n"o! Dene el %alor "n"o 3uepuede +enerar la secuenca (&tl para secuencas3ue descrecen*. s un n&"ero entero
C?CL! specca s la secuenca +enera %aloresrepetdos (nca el cclo* despus de lle+ar al
"'"o o el "n"o dendo CAC Ta"a4o! specca cuantos %alores debecrear Oracle en la "e"ora. Por de-ecto Oracle+enera 2 %alores en cac0e
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
8/30Universidad del Cauca FIET 12-"
Crear una secuenca
Crear una secuenca 3ue se use para los%alores de la lla%e pr"ara de la tablaDeparta"entos
:o se deben repetr %alores
6e debe arrancar en ) e ncre"entarde 1 en 1 0asta un "'"o de J
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
9/30Universidad del Cauca FIET
12-#
Consultar las secuencas deles3ue"a
La %sta del dcconaro de datos U6/K6=U:C6"uestra n-or"ac$n de las secuencas del usuaro La colu"na LastK:u"ber "uestra el s+uente
%alor 3ue +enerar la secuenca. 6$lo aplcacuando no se usa cac0e
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
10/30Universidad del Cauca FIET
12-1$
6eudocolu"nas :T5AL #CU//5AL
:T5AL retorna els+uente %alordsponble. l %alores d-erente paratodos los usuarosconcurrentes
CU//5AL retorna el<"o %alor+enerado para la
ses$n de usuaro Antes de usarCU//5AL, se debeusar :T5AL
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
11/30Universidad del Cauca FIET
12-11
/e+las para usar :T5AL #CU//5AL
:T5AL #CU//5AL sepueden usar en loss+uentesconte'tos!
La clusula 6LCT de una sentenca 6LCT3ue no es parte de una subconsulta
La clusula 6LCT de una subconsulta en unasentenca I:6/T
La clusula 5ALU6 de una sentenca I:6/T
La clusula 6T de una sentenca UPDAT:T5AL #CU//5AL :O sepueden usar en loss+uentesconte'tos !
La sentenca 6LCT de una %sta Una subconsulta en una sentenca 6LCT,
DLT o UPDAT Una sentenca 6LCT con la palabra cla%e
DI6TI:CT Una sentenca 6LCT con una clusula
7/OUP B?, A5I:7 u O/D/ B? La e'pres$n DMAULT en una sentenca
C/AT TABL o ALT/ TABL
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
12/30Universidad del Cauca FIET
12-12
Lnea"entos para el uso desecuencas
acer cac0e de %alores de una secuencaen "e"ora 0ace "s rpdo el acceso aesos %alores. l cac0e se llena la pr"era%e 3ue se solcta un %alor a la secuenca,lue+o se usan 0asta 3ue el cac0e se %aca.
n la pr$'"a solctud se %uel%e a llenar
uecos en los %alores de una secuencapueden ocurrr cuando!
Ocurre un rollbacN l sste"a se cae Un %alor de la secuenca se usa en otra tabla
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
13/30Universidad del Cauca FIET
12-13
9odcar una secuencaALT/ 6=U:C :o"bre6ecuenca
>I:C/9:T B? Incre"ento@>9A5ALU 9'"o E :O9A5ALUF@>9I:5ALU 9n"o E :O9I:5ALUF@>C?CL E :OC?CLF@>CAC Ta"a4o E :OCACF@G
6 una secuenca alcana el %alor "'"o # no es
cclca, la pr$'"a %e 3ue se le solcte un %alorOracle en%ar un error. Con el co"ando ALT/ se puede ca"bar el
ncre"ento, el %alor "'"o, el %alor "n"o, ses o no cclca # s usa o no cac0e # el ta"a4o del"s"o
Para alterar una secuenca se debe ser el due4o oposeer el pr%le+o de ALT/ sobre la secuenca
Al alterar una secuenca, s$lo se a-ectan los%alores -uturos
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
14/30Universidad del Cauca FIET 12-14
9odcar una secuencaALT/ 6=U:C :o"bre6ecuenca
>I:C/9:T B? Incre"ento@>9A5ALU 9'"o E :O9A5ALUF@>9I:5ALU 9n"o E :O9I:5ALUF@>C?CL E :OC?CLF@>CAC Ta"a4o E :OCACF@G
Con la sentenca ALT/ no se puede ca"barel %alor ncal, para ello se debe borrar #recrear la secuenca con el %alor deseado
Al alterar una secuenca se ejecuta certa
%aldac$n, por eje"plo, no se puede as+narun %alor a 9A5ALU 3ue sea "enor al %aloractual de la secuenca. n este caso elco"ando no se ejecuta
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
15/30
Universidad del Cauca FIET 12-15
l"nar una secuenca
D/OP 6=U:C :o"bre6ecuencaG
l"na la secuenca #borra la denc$n deldcconaro de datos
Despus de borraruna secuenca, no sepuede usar :T5AL #CU//5AL sobre ella
6e debe ser el due4ode la secuenca oposeer el pr%le+o deD/OP A:? 6=U:C
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
16/30
Universidad del Cauca FIET 12-1
8ndces
s un objeto de un es3ue"a s usado por el 6er%dor Oracle para au"entar
la %elocdad de recuperac$n de las las deuna tabla usando apuntadores
Per"ten reducr la H6 de dsco usando un"todo de acceso rpdo para ubcar los datos 6on l$+ca # -sca"ente ndependentes de la
tabla 3ue nde'an 6on usados # "antendos auto"tca"ente
por el 6er%dor Oracle Cuando se borra una tabla, los ndces
relaconados se el"nan
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
17/30
Universidad del Cauca FIET 12-1!
Cundo se crean los ndces
Auto"tca"ente Un ndce &nco se crea auto"tca"ente
cuando se dene una restrcc$n P/I9A/?? o U:I=U. l no"bre del ndcecorresponde al no"bre dado a la restrcc$n
9anual"ente Los usuaros pueden crear "anual"ente
ndces &ncos # no &ncos en las colu"nasde una tabla para "ejorar la %elocdad de
acceso a las las :o se reco"enda crear ndces &ncos en
-or"a "anual
6 l $ d
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
18/30
Universidad del Cauca FIET 12-1"
6nta's para la creac$n dendces
C/AT >U:I=UEBIT9AP@ I:D :o"breDelIndceO: >s3ue"a.@:o"breTabla ( Colu"na1 >, Colu"na2, Q@ >A6C E D6C@*G
Para crear un ndce! l usuaro debe ser due4o de la tabla, o l usuaro debe tener per"so de nde'ar (I:D* la tabla, o l usuaro debe tener el pr%le+o de C/AT A:? I:D
a# dos tpos de ndces bscos Rrboles BS! 9s co"&n"ente usados 9apas de bts! Para operacones l$+cas en ca"pos con
pocos %alores dstntos, por eje"plo una clusula
/ 7enero9V O/ stadoC%lCV Otros! 8ndces 0as0 sobre clusters, Rrboles BS sobre clusters,
8ndces de cla%e n%ersa, 8ndces basados en -uncones
6 t l $ d
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
19/30
Universidad del Cauca FIET 12-1#
6nta's para la creac$n dendces
Por eje"plo, crear un ndce para "ejorar la%elocdad de consulta por el no"bre de lose"pleados
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
20/30
Universidad del Cauca FIET 12-2$
Cundo crear un ndce
6e debe crear un ndce s! La colu"na contene un a"plo ran+o de %alores La colu"na contene un bajo ran+o de %alores (Bt"aps* La colu"na contene una +ran cantdad de %alores :ULL
# las consultas buscan un %alor deter"nado (W de :ULL* Una o "s colu"nas son -recuente"ente usadas en una
clusula / o una condc$n de XOI:. s nor"al crearndces en colu"nas con restrcc$n de lla%e -ornea La tabla es "u# +rande # se espera 3ue la "a#ora de las
consultas recuperan "enos del 2 o YZ (1)Z* de las lasde la tabla
Crear ndces sobre una tabla :O s+nca "s
%elocdad en las consultas Cada D9L sobre la tabla debe "odcar los ndcesasocados
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
21/30
Universidad del Cauca FIET 12-21
Cundo :O crear un ndce
:or"al"ente :O es apropado crear unndce s! La tabla es pe3ue4a (2)[H)12 las* La colu"na o colu"nas :O son usadas
-recuente"ente en una clusula / o unacondc$n de XOI:
La "a#ora de consultas por la colu"narecuperan "s del YZ (1)Z* de las las de latabla
La tabla es "odcada -recuente"ente Las colu"nas del ndce son re-erencadas co"oparte de una e'pres$n en la clusula /
C lt d l
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
22/30
Universidad del Cauca FIET 12-22
Consultar ndces en eldcconaro
UserKInde'es # UserKIndKColu"ns
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
23/30
Universidad del Cauca FIET 12-23
8ndces basados en -uncones
s un ndcebasado en unae'pres$n
La e'pres$nnclu#e colu"nasde la tabla,constantes,
-uncones 6=L #-uncones dendaspor el usuaro
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
24/30
Universidad del Cauca FIET 12-24
l"nar ndcesD/OP I:D :o"breDelIndceG
l"na un ndce del es3ue"a # su denc$ndel dcconaro de datos
Para el"nar un ndce debe ser el due4o o
tener el per"so de D/OP A:? I:D Para "odcar un ndce se debe borrar #
recrearlo Cuando se el"na una tabla se el"na los
ndces # las restrccones asocadas pero las%stas # las secuencas se "antenen. Las%stas 3uedan en estado n%aldo
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
25/30
Universidad del Cauca FIET 12-25
l"nando un ndce
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
26/30
Universidad del Cauca FIET 12-2
6n$n"osC/AT >PUBLIC@ 6?:O:?9 :o"bre6non"oMO/ >s3ue"a.@ObjetoG
6r%en para s"plcar el acceso a los objetos(otro no"bre para un objeto, s"lar a unacceso drecto de ndo\s*
Con los sn$n"os se puede! Macltar el acceso a objetos de otro es3ue"a, #a 3ue
no se necesta el prejo del es3ue"a stablecer no"bres cortos para objetos 3ue tenen
no"bres lar+os
/estrccones l objeto no puede estar contendo en un pa3uete l no"bre de un sn$n"o pr%ado debe ser d-erente
al de cual3uer otro objeto del es3ue"a del usuaro
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
27/30
Universidad del Cauca FIET 12-2!
6n$n"os
l ad"nstrador del sste"a puede crearsn$n"os p&blcos a todos los usuaros
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
28/30
Universidad del Cauca FIET 12-2"
n esta lecc$n usted deb$ aprender! 7enerar n&"eros secuencales en -or"a
auto"tca para dentcar tablas 5er la n-or"ac$n de las secuencas del
es3ue"a en U6/K6=U:C6 Crear ndces para "ejorar la %elocdad de
acceso a las las de una tabla 5er la n-or"ac$n de los ndces del es3ue"a
en U6/KI:D6 # U6/KI:DKCOLU9:6 Usar sn$n"os para dar no"bres alternat%osa objetos del "s"o es3ue"a o de otro
/esu"en
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
29/30
Universidad del Cauca FIET 12-2#
/ealar una prctca de oc0o (]*puntos 3ue per"te practcar! La creac$n de secuencas
l uso de secuencas La creac$n de ndces no &ncos l desple+ue de la n-or"ac$n del
dcconaro de datos relaconada consecuencas e ndces Borrar ndces
Practca 12
-
7/24/2019 CapituloORA12 Otros Objetos de La Base de Datos 30
30/30
Universidad del Cauca FIET 12-3$
Desarrollar un e'a"en de de(1* pre+untas en "odo deaprendaje (Learnn+ "ode*,
selecconados en -or"a aleatora. /ealar una corta real"entac$n
de cada una de las pre+untas.
Te"a! Creatn+ Ot0er DatabaseObjects
'a"en posteror