S1 - Instalación de Oracle 11g
S1 - Instalación de Oracle 11g
Semana 01:
MARCO TEÓRICO
“Es un sistema de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo en inglés de Object -
Relational Data Base Management System), desarrollado por Oracle Corporation. Se considera como uno de los sistemas
de bases de datos más completos, destacando: soporte de transacciones, estabilidad, escalabilidad, y soporte
multiplataforma”.
Oracle es un sistema gestor de base de datos con características objeto - relacional, que pertenece al modelo evolutivo de
SGDB, este sistema permite controlar y gestionar grandes volúmenes de contenidos.
RECURSOS
Hardware
Sistema. Oracle en Windows requiere un PC Intel x86, AMD64 o Intel EM64T
Memoria. Al menos 1 GB de RAM y el doble en virtual.
Espacio en disco duro. Al menos 6 GB para la instalación (algunas instalaciones requieren menos). Además,
necesitamos poder almacenar 500 MB en la carpeta TEMP del sistema.
Tarjeta gráfica. Debe de ser capaz de mostrar 1024 por 768 píxeles como mínimo y 256 colores.
Software
Sistema Operativo.
Windows 2003 Server y 2003 Server R2.
Windows XP Professional.
Windows Vista, pero no la versión Home Edition.
Windows Server 2008 y 2012. No la versión Server Core.
Compiladores. Se usan para la gente que crean aplicaciones en Oracle usando lenguajes como Pro C, Pro COBOL,
JAVA.
o Visual C++.NET 2005 8.0 o Intel 10.1 C, .Net Express.
Navegador. Para configurar algunos servicios de Oracle. Debe de ser navegador moderno (Internet Explorer 6 o
superior, Firefox 2.0 o superior, Safari 3.1 o superior, Chrome 3.0 o superior)
Usar dirección IP única en la máquina en la que se instala Oracle. Es decir, no usar DHCP para direccionar la IP
en el servidor de Oracle. No es un requisito obligatorio, pero es muy recomendable.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 2
______________________________________________________________________
___________________
INTRODUCCIÓN A UN BD RELACIONAL Y LA ARQUITECTURA ORACLE
Modelo Relacional
El modelo relacional para la gestión de una base de datos es un modelo de datos basado en la lógica de predicado y en la
teoría de conjuntos. Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos
dinámicamente.
En este modelo, todos los datos son almacenados en relaciones y como cada relación es un conjunto de datos, el orden en el
que estos se almacenen no tiene mayor relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene
la considerable ventaja de que es más fácil de entender y de utilizar por un usuario no experto. La información puede ser
recuperada o almacenada por medio de «consultas» que ofrecen una amplia flexibilidad y poder para administrar la
información.
Este modelo considera la base de datos como una colección de relaciones. De manera simple, una relación representa una
tabla que no es más que un conjunto de filas, cada fila es un conjunto de campos y cada campo representa un valor que
interpretado describe el mundo real. Cada fila también se puede denominar tupla o registro y a cada columna también se le
puede llamar campo o atributo.
Una tabla es una estructura lógica que sirve para almacenar los datos de un mismo tipo (desde el punto de vista conceptual).
Almacenar los datos de un mismo tipo no significa que se almacenen sólo datos numéricos, o sólo datos alfanuméricos.
Desde el punto de vista conceptual, esto significa que cada entidad se almacena en estructuras separadas.
IMPORTANTE
LA ESTRUCTURA Y DATOS DE LAS TABLAS, SE ENCUENTRAN
EN LOS ARCHIVOS SCRIPT DE BASE DE DATOS.
Semana01_Indices.sql,
Semana01_Secuencias.sql,
Semana01_Sinonimos.sql,
FAVOR DE DESCARGAR TODOS LOS ARCHIVOS.
El área global del sistema SGA (system global area), es el área compartida por todos los usuarios y se divide en tres partes:
Fondo común compartido (Shared pool), en ella mantiene el diccionario de datos y las áreas compartidas de las
órdenes SQL que se solicitan para su procesamiento.
Área de memoria rápida (Database buffer cache), donde mantiene los datos traídos por las órdenes SQL de los
usuarios conectados a la base de datos.
Área de registros de rehacer (Redo log buffer), aquí se registran los cambios hechos a la base de datos.
Por cada sesión de usuario, se crea también, en memoria, un área específica llamada área global de programa o PGA
(program global area). Esta área no se comparte con las otras sesiones de usuario.
No es necesario que todos los espacios de tablas estén en un mismo disco. Cuando se crean en distintos discos se busca un
mejor desempeño y mejor manejo del espacio de almacenamiento.
Una base de datos puede tener un solo espacio de tablas, pero, por las razones anteriores, se recomienda varios espacios de
tablas. Como mínimo, se debe tener un espacio de tablas del sistema (SYSTEM), un espacio de tablas por cada aplicación,
un espacio de tablas para los usuarios y otro espacio de tablas para los índices.
EI espacio de tablas SYSTEM se crea automáticamente cuando se crea una base de datos. Allí se guardan los archivos de
control y el diccionario de datos y toda la información de los procedimientos almacenados.
EI DBA (Administrador de Base de Datos) puede crear un espacio de tablas con una orden, como la siguiente:
CREATE T ABLESPACE indices datafile ‘discod/bd/datosl.dbf’ size 300m;
Los archivos de datos (datafiles) almacenan los datos del usuario. Se requiere como mínimo uno para una base de datos.
Cuando se agote el espacio, un DBA tiene dos alternativas:
En una base de datos, pueden existir otros objetos que no contienen datos como las vistas, los sinónimos y las secuencias.
Sin embargo, todo objeto, independientemente de si contiene datos o no, debe pertenecer a un esquema. Por eso, una
colección de objetos de un usuario se denomina esquema.
Un objeto se puede crear en un esquema de tres formas:
Si un usuario da una orden de creación de un objeto, por defecto, el sistema lo crea en su propio esquema.
Copiando el objeto de otro usuario (al nombre de un objeto siempre se le antepone el nombre del esquema, por
ejemplo juan.empleado) con una orden como:
Un objeto puede almacenarse en uno o más archivos de datos (datafiles), pero en un solo espacio de tablas (tablespace).
Dos objetos diferentes de un esquema pueden estar en distintos tablespaces.
Los objetos pueden almacenarse en múltiples discos. Por ejemplo, parte de jane.emp es almacenado en el archivo de datos
1 sobre el disco A y parte en el archivo de datos 2 sobre el disco B.
E. E. Procesos
Los procesos son programas que se ejecutan para permitir el acceso a los datos. Los procesos se cargan en memoria y son
transparentes para los usuarios. Los procesos se clasifican en tres grupos: procesos de base, de usuario y procesos
servidores.
DBWR: (Database writer) se encarga de manejar los “buffers” de memoria cache para que los procesos del usuario siempre
encuentren a algunos uno de ellos disponibles. Es un proceso obligatorio que, además, escribe los bloques de datos
modificados por los usuarios en los archivos de datos que componen la B.D cuando el proceso LGWR le envía el mensaje
de hacerlo.
LGWR: (Log writer) este proceso escribe datos desde la SGA a los archivos de rehacer (redo log files) que sirven en caso
de fallas en la instancia. Este proceso es obligatorio y es el único encargado de escribir y leer en estos archivos. El proceso
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 8
______________________________________________________________________
___________________
de llenado de estos archivos es circular, por lo tanto, antes de empezar a sobrescribir en uno de ellos, se marca un punto de
verificación y LGWR envía la orden de escritura en los datafiles al proceso DBWR. Cuando se cambia de uso de grupo de
redo log (archivo deshacer), se produce un SWITCH LOG
LCKn, Lock: (lock processes) El bloqueo es un proceso opcional. Efectúa los bloqueos entre instancias, en caso de
ambientes con servidores paralelos (hasta con 10 servidores).
CKPT: (Check point) El punto de comprobación es un proceso opcional que ocurre cuando los usuarios conectados
a la base de datos, hacen solicitudes de exámenes de datos. Uno de los eventos que dispara a este proceso es el
SWITCH LOG.
SNPn: (Snapshot process) se encarga de refrescar los snapshots o réplicas de tablas que se usan, principalmente, en
ambientes distribuidos.
SMON: (System monitor) recupera el sistema ante una falla de la instancia.
RECO: (Recovery) recupera ante las fallas, en una transacción en ambientes distribuidos.
ARCH: (Archive) copia los registros de rehacer de la RAM en archivos de datos (archive redo logs) que permiten la
recuperación cuando se presentan fallas de los medios magnéticos.
PMON: (Process Monitor) recupera la instancia ante una falla de un proceso de usuario; libera los recursos del
proceso que falló.
Procesos del Usuario
Cuando un usuario se conecta a la base de datos, se crea un proceso de usuario que se encarga de ejecutar el código de
aplicación del usuario y manejar el perfil del usuario con sus variables de ambiente. Los procesos de usuario no se pueden
comunicar directamente con la base de datos, únicamente, lo hacen a través de procesos servidores.
Procesos Servidores
Ejecutan las órdenes SQL de los usuarios y llevan los datos al “database buffer cache” para que los procesos del usuario
puedan tener acceso a los datos. Se pueden tener distintas arquitecturas para trabajar en ORACLE, según los tipos de
servidores: dedicados o multihilos.
Una configuración dedicada significa que cada conexión de un usuario de Base de Datos será atendida exclusivamente por
un proceso servidor. Una configuración multihilo (multithread) o compartida es cuando existe un número limitado de
procesos servidores que atienden a todas las conexiones de Bases de Datos existentes cuando haya un requerimiento de por
medio. En esta última configuración, existen los despachadores (dispatchers), que son los que ante algún requerimiento de
sesión asignan dicho trabajo a un proceso servidor disponible.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 9
______________________________________________________________________
___________________
F. Instancia de ORACLE
Se denomina instancia al conjunto de estructuras de memoria y procesos de fondo que acceden los archivos de
bases de datos. Es posible que una misma base de datos sea accedida por múltiples instancias; cada una de ellas
residiendo en una máquina diferente (ésta es la opción de servidores paralelos de ORACLE).
El sistema de bases de datos ORACLE, cuando inicia, sigue los pasos que se detallan a continuación:
1. Iniciar la instancia. Para hacer este paso, ORACLE lee el archivo de parámetros y configura la instancia, con base en
ellos. En ese momento, se crea la SGA y se activan los procesos de base, pero aún no se puede hacer nada.
2. Montar la base de datos. Consiste en preparar el sistema para su uso trayendo a la RAM el diccionario de datos; es como
poner el sistema en primera, listo para recibir algunas órdenes del DBA.
3. Abrir la base de datos. En este momento se abren los archivos y los usuarios ya pueden tener acceso a los datos.
De acuerdo cómo se defina la instancia, ORACLE, a través de sus parámetros, puede determinarse que tan poderoso y
grande es el motor. Los parámetros se definen en el archivo INIT.ORA. Entre ellos se pueden mencionar los siguientes:
db_block_buffers = número de bloques de bases de datos en la SGA. Existirá un buffer por cada bloque.
db_block_size = tamaño del bloque de la base de datos. shared_poo_size = tamaño del área compartida “shared pool”, en
bytes.
Además, allí se especifica el número de usuarios concurrentes, el número de transacciones concurrentes y los nombres de
los archivos de control para la base de datos.
Estos parámetros se pueden ajustar durante el proceso de afinamiento porque ellos inciden en el desempeño del sistema.
Algunos de los parámetros son específicos a una base de datos y, por lo tanto, deben ser cambiados antes de crear una base
de datos. Se incluyen en estos:
database_name = nombre de la base de datos. db_block_size = tamano del bloque.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 10
______________________________________________________________________
___________________
INTERACTUANDO CON LA BD: CONEXIÓN SQL*PLUS Y PL/SQL DEVELOPER.
SQL *Plus.
El SQL Plus tiene un entorno orientado a carácter. Forma parte del grupo de programas de Oracle11g Express Edition. Es
usado para conectarse con la base de datos de Oracle, solo es necesario tener una cuenta de usuario con su respectiva
contraseña.
Puedes buscarlo, en el grupo de programas: “Oracle Database 11g Express Edition” desde el botón de inicio de
Windows.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 11
______________________________________________________________________
___________________
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 12
______________________________________________________________________
___________________
Existen varias formas de conectarse con una base de datos Oracle:
PRIMERA FORMA:
Una primera forma sería después de ejecutar el SQL *PLUS desde el explorador de Windows, digitar en la línea de
dirección: SQLPLUS y presione Enter. Tal como se muestra en la imagen.
Inmediatamente aparecerá la ventana Shell de conexión con base de datos, ahí debe ingresar el usuario (SYSTEM) y la
contraseña (Oracle) del perfil de base de datos donde se desea conectar.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 13
______________________________________________________________________
___________________
SEGUNDA FORMA
SQLPlus SYSTEM/oracle
Se obtendrá la ventana del SQL Plus, donde Ud. Deberá usar el Comando Connect. Luego digitar el usuario y la
contraseña de la base de datos, hágalo de la siguiente manera:
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 15
______________________________________________________________________
___________________
CUARTA FORMA
Desde la ventana de ejecutar, es decir presione la tecla de Windows + tecla R, obtendrá esta ventana y digitara SQLPLUS
usuario/contraseña tal como se observa en la imagen:
Se presenta la ventana principal de PL/SQL Proceda a realizar una nueva conexión, haciendo Click en el signo +, y elija la
opción “Nueva Conexión de Base de Datos…”, tal como se muestra en la imagen:
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 17
______________________________________________________________________
___________________
Proceda a ingresar el usuario y contraseña del motor de base de datos.
5
4 6
Para crear una nueva tabla en el esquema debe contar con el privilegio de sistema CREATE TABLE.
Para crear una nueva tabla en otro esquema de usuario, debe contar con el privilegio de sistema CREATE ANY
TABLE.
PRUEBA TU MISMO:
Video referencial: https://www.youtube.com/watch?v=0UPOeKzmsAw
https://www.youtube.com/watch?v=B9ftErgvdmI
Antes de crear una tabla debemos de determinar a qué esquema de la base de datos pertenecerá. Para poner esto en práctica,
vamos a crear en la base de datos un espacio para las tablas (Tablespace) llamado IDAT y también, vamos a crear un
usuario llamado ALUMNO que utilizaremos para crear todos los objetos a ver en esta sesión.
PASO 1:
Crear una carpeta en su disco físico (C:\ D:\ o el que disponga), en este caso creara la carpeta ORACLE_DATA, en el
disco C:\. Tal como se muestra e la imagen.
PASO 2:
Conéctese a través de SQL *PLUS, a una cuenta de usuario con privilegios suficientes para crear tablespaces y nuevos
usuarios, en este caso el usuario será: SYSTEM y la contraseña es: oracle.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 19
______________________________________________________________________
___________________
PASO 3:
A continuación crear el espacio de tablas IDAT de 50 megas de tamaño, para almacenar en esta parte de base de datos, las
tablas a crear, para usaremos el comando CREATE TABLESPACE.
PASO 4:
A continuación, verificamos la creación de nuestro TABLESPACE. Usando la tabla de sistema v$tablespace.
PASO 5:
La base de datos requiere un usuario (CREATE USER), crearemos el usuario ALUMNO.y contraseña IDAT.
PASO 7:
Asignaremos los permisos (GRANT) de usuario pertinentes para este ejemplo, Los permisos son: CONNECT, CREATE
TABLE, CREATE ANY TABLE, RESOURCE. Y los asociamos al Rol PERMISOS ya antes creado.
PASO 8:
Asociamos (GRANT) el Rol PERMISOS con el usuario ALUMNO, de esta manera el usuario ALUMNO, podrá realizar
las tareas i/o permisos que el Rol tiene.
PASO 9:
Desconéctese del esquema actual. Use el comando DISCONNECT.
PASO 10:
Conéctese con el usuario ALUMNO y su contraseña IDAT, para probar la configuración de todo lo realizado.
PASO 1:
Ingrese a su usuario reciente mente creado: usuario: ALUMNO, contraseña: IDAT.
PASO 2:
En el prompt del sistema SQL>, proceda a crear la tabla CLIENTE con sus campos y llave respectiva.
PASO 3:
Verificando la existencia de la tabla CLIENTE.
Nota:
En esta ventana de SQL *PLUS, puede crear tablas, restricciones, relaciones incluidas.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 22
______________________________________________________________________
___________________
MODIFICANDO ESTRUCTURA DE TABLAS:
SQL> alter table CLIENTE add Bonos NUMBER (12, 2) Not Null;
SQL> alter table CLIENTE add (Ruc Char (11) Not Null, Telefono Char (9) Not Null);
Por ejemplo, el siguiente comando disminuye la longitud de la columna BONOS de la tabla CLIENTE, verifique la
modificación usando el comando DESCRIBE.
Por ejemplo, el siguiente comando renombra la columna BONOS de la tabla CLIENTE por BONO_CLIENTE, use el
comando DESCRIBE para verificar el cambio.
Eliminando Tablas.
Comando: DROP TABLE.
Si la tabla a eliminar está referenciada por otra tabla a través de una llave foránea, usted no podrá eliminarla con el
comando anterior, usted tiene que adicionar la cláusula CASCADE CONSTRAINT al comando DROP TABLE para forzar
la eliminación de la tabla.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 24
______________________________________________________________________
___________________
Por ejemplo, el siguiente comando elimina la tabla CLIENTE del esquema ALUMNO junto con la llave primaria y las
foráneas que hacen referencia (constraints).
Restricciones
Las restricciones de los datos son reglas que se imponen para asegurarnos que los datos cumplen con una serie de
condiciones predefinidas para cada tabla. Estas restricciones ayudan a conseguir la integridad referencial: todas las
referencias dentro de una Base de Datos son válidas y todas las restricciones se cumplen.
Las restricciones se van a definir acompañadas por un nombre, lo que permitirá activarlas o desactivarlas según sea el caso;
o también mezcladas en la definiciones de las columnas de la tabla. A continuación vamos a describir cada una de las
restricciones mencionadas.
Restricción Descripción
DEFAULT Establece el valor por defecto para esa columna, si no se le asigna ninguno.
CHECK Comprueba que se cumpla una condición determinada al rellenar esa columna. Esta condición sólo
debe estar construida con columnas de esta misma tabla.
FOREIGN El contenido de esta columna será uno de los valores contenidos en una columna de otra tabla
KEY maestra. Esta columna marcada como clave foránea o ajena puede ser NULL. No hay límite en el
número de claves foráneas. La clave ajena puede ser otra columna de la misma tabla. Se puede forzar
que cuando una fila de la tabla maestra sea borrada, todas las filas de la tabla detalle cuya clave ajena
coincida con la clave borrada se borren también (borrado en cascada). Esto se consigue añadiendo la
cláusula ON DELETE CASCADE en la definición de la clave ajena.
NOT NULL Establece la obligatoriedad de que esta columna tenga un valor no nulo. Se debe especificar junto a la
columna a la que afecta. Los valores nulos no ocupan espacio, y son distintos a 0 y al espacio en
blanco. Hay que tener cuidado con los valores nulos en las operaciones, ya que e1 * NULL es igual a
NULL.
PRIMARY Conjunto de columnas que forman la clave primaria de esa tabla. Se comporta como única y
KEY obligatoria sin necesidad de explicitarlo. Sólo puede existir una clave primaria por tabla. Puede ser
referenciada como clave ajena por otras tablas. Crea un índice automáticamente cuando se habilita o
se crea esta restricción.
UNIQUE Evita valores repetidos en una columna, admitiendo valores nulos. Oracle crea un índice
automáticamente cuando se habilita esta restricción y lo borra al deshabilitarse.
NULL Cuyo significado es nulidad (Sin Valor), es decir, no tener valor, ejemplo: un billete de 20 soles falso,
ya que este no tiene valor.
NOT NULL Cuyo significado es (Con valor) es decir, este dato deberá valer algo obligatoriamente al momento de
acceder datos a la tabla. Ejemplo: un billete de 20 soles verdadero (ya que tiene valor)
Se pide crear el Script de base de datos, usando el comando CREATE TABLE, cada tabla tiene sus restricciones y son las
siguientes:
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 26
______________________________________________________________________
___________________
En la Tabla ALUMNO considere las siguientes restricciones CONSTRAINT a nivel de tabla:
1. Establecer el Primary Key en la mencionada tabla.
2. En el campo Sexo o Género se debe considerar únicamente ‘M’ o ‘F’.
3. En el Campo Grado considerar del 1 hasta el 6.
4. En el campo Edad, considere alumnos entre 10 a 22 años.
DESARROLLO:
PASO 1:
Ingrese a la herramienta PL/SQL, usando como usuario a: ALUMNO y contraseña: IDAT. Y redacte el siguiente código,
luego grábelo con el nombre: VALIDACIONES.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 27
______________________________________________________________________
___________________
PUEDE COPIAR Y PEGAR ESTE CODIGO AL ENTORNO DE PL/SQL.
Create Table Alumno(
Cod_Alu VARCHAR2(5) Not Null,
Nombre VARCHAR2(20) Not Null,
Sexo VARCHAR2(1) Not Null,
Grado Int Not Null,
Edad Int Not Null,
CONSTRAINT PK_COD_ALU PRIMARY KEY (Cod_Alu),
CONSTRAINT CHK_SEXO_VALID CHECK (SEXO IN ('M','F')),
CONSTRAINT CHK_GRADO_VALID CHECK (GRADO IN (1,2,3,4,5,6)),
CONSTRAINT CHK_EDAD_VALID CHECK (EDAD>=10 AND EDAD<=22)
);
PASO 2:
Para ejecutar este código, se tienen 2 botones en el panel, con las siguientes apariencias:
Nota:
Use el 2do botón para ejecutar todo el código sin necesidad de seleccionarlo, aunque puede seleccionar el bloque de
instrucciones deseado y ejecutarlo de la misma manera.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 28
______________________________________________________________________
___________________
Ver el resultado:
1. Ejecute el Script
2. Refrescar la carpeta Tablas (filtrado), hacer Click derecho sobre la opción “Tablas” y seleccionar Refrescar. Esto
se hace la mostrar las tablas creadas.
Para crear un diagrama de base de datos en oracle, se debe realizar los siguientes pasos:
PASO 1:
Seleccionar del menú principal del PL/SQL la opción: Ver / Data Modeler / Explorador, tal como se indica en la imagen:
PASO 2:
En el panel de la izquierda se obtendrá una nueva ventana con el nombre: Explorador, expanda las opciones y encuentre la
carpeta Modelos Relacionales, haga Click derecho sobre esa opción y elija la sub opción: “Nuevo Modelo Relacional”. Tal
como se indica en la siguiente
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 30
______________________________________________________________________
___________________
PASO 3:
Se presentará a lado derecho del entorno del PL/SQL una sub ventana titulada: Relational_1 (sin titulo_1), es ahí donde
tiene que ir arrastrando cada tabla (de izq. a der.) hacia dicho entorno. Para el arrastre debe hacerlo con el botón derecho
del mouse.
Los índices son elementos que ayudan a las tablas, a obtener acceso más rápido a los datos contenidos en una tabla.
Las consultas que se harán mediante un índice. Sobre una tabla, reduce notablemente la búsqueda de registros aumentando
el rendimiento.
Otros Conceptos:
Es un objeto de esquema.
Oracle Server lo utiliza para acelerar la recuperación de filas utilizando un puntero.
Puede reducir la E/S de disco mediante un método de ruta de acceso rápido para encontrar datos.
Es independiente de su tabla indexada.
Oracle Server lo utiliza y mantiene automáticamente.
Creación de un índice:
Cree un índice en una o varias columnas.
Para borrar un índice, debe ser el propietario del mismo o tener el privilegio DROP ANY INDEX.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 33
______________________________________________________________________
___________________
HORA PRUEBE UD. MISMO.
PASO 1:
Ingrese a PL/SQL usando al usuario SYSTEM y contraseña: oracle.
PASO 2:
Proceda a crear las tablas relacionadas: EMPLEADO y CARGO, mostrando luego su Diagrama de BD.
COMPROBANDO AQUI
QUE DICHO INDICE
YA ESTA CREADO.
FIN DE PRUEBA.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 36
______________________________________________________________________
___________________
Manejo de secuencias
Una secuencia:
Genera automáticamente números únicos.
Es un objeto compartible.
Normalmente se utiliza para crear un valor de clave primaria.
Sustituye al código de aplicación.
Acelera la eficacia del acceso a los valores de secuencia al almacenarse en memoria caché.
Creación de Secuencia:
Cree una secuencia llamada CARGO_CARGOID_SEQ para utilizarla para la clave primaria de la tabla CARGO. No
utilice la opción CYCLE para valores de clave primaria.
Nota:
La columna LAST_NUMBER muestra el siguiente número de secuencia disponible si se especifica NOCACHE.
NEXTVAL devuelve el siguiente valor de secuencia disponible. Devuelve un valor único cada vez que se hace
referencia a ella, incluso para usuarios distintos.
CURRVAL obtiene el valor de la secuencia actual.
NEXTVAL se debe emitir para dicha secuencia antes de que CURRVAL contenga un valor.
PASO 1:
Inicie sesión en PL/SQL usando al usuario SYSTEM y la contraseña: oracle, proceda a ejecutar el siguiente Script de Base
de Datos, donde se crearan las tablas: EMPLEADO y CARGO. Que están debidamente relacionados.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 39
______________________________________________________________________
___________________
Paso 2:
Agregar a su Script las siguientes líneas de código, que corresponde a la creación de la secuencia, la secuencia llevará el
nombre GENERAR_CODIGO_SEQ, esta empezara desde 1 hasta el tope de 2000. Incrementable de 1 en 1.
PASO 3:
Agregar a su Script las siguientes líneas de código, que corresponde a la verificación de la existencia de la secuencia
GENERAR_CARGOID_SEQ en la tabla USER_SEQUENCES del diccionario de datos.
Resultados:
PASO 5:
¿En qué valor se quedó la secuencia GENERAR_CARGOID_SEQ?
Resultados: Forma 2.
--Forma 2:
Select GENERAR_CARGOID_SEQ.CURRVAL From DUAL;
Simplifique el acceso a los objetos mediante la creación de un sinónimo (un objeto con otro nombre). Con los sinónimos,
puede:
Facilitar la referencia a una tabla propiedad de otro usuario
Reducir nombres largos de objeto.
Ejemplo:
Cree una abreviatura para la tabla DEPARTAMENTO, esta será dep.
CREATE SYNONYM dep
FOR DEPARTAMENTO;
Synonym Created.
Usando el Sinónimo. Con el comando de consulta hacemos la llamada del sinónimo dep, este visualizara a todos
los registros de la tabla DEPARTAMENTO.
PASO 1:
Inicie sesión en PL/SQL usando al usuario SYSTEM y la contraseña: oracle, proceda a ejecutar el siguiente Script de Base
de Datos del ejemplo anterior, donde se crearan las tablas: EMPLEADO y CARGO. Que están debidamente relacionados.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 45
______________________________________________________________________
___________________
PASO 2:
Agregar a su Script las siguientes líneas de código, que corresponde a la creación del sinónimo EMP que hace referencia a
la tabla EMPLEADO.
CREATE SYNONYM EMP FOR EMPLEADO;
PASO 2:
Usando el sinónimo en una consulta.
Select * From EMP;
Como observa ya no usamos el nombre de la tabla EMPLEADO si no al Sinónimo EMP.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 46
______________________________________________________________________
___________________
PASO 3:
Elimine el sinónimo EMP.
El objetivo de este capítulo es comprender las habilidades necesarias para convertirse en un profesional de
Programación en Base de Datos Oracle exitoso.
El estudiante detalla la arquitectura de la base de datos Oracle y configura la conexión de un cliente local o
remoto, a través del archivo TSN. Así mismo crea y maneja información mediante las herramientas SQL *PLUS
y PL/SQL, gestionando una instancia de base de datos.
ACTIVIDAD VIRTUAL
Ingresa a la plataforma virtual, revisa y analiza el siguiente diagrama. Luego súbelo a la plataforma siguiendo las
instrucciones.
Desarrollar lo Siguiente:
Crear un TableSpace llamado CENTINELLA cuyo tamaño es 150Megas, este archivo debe ser colocado en una
carpeta llamada DBO, en su disco C:\, todo esto desde la herramienta SQL *PLUS.
Desde SQL *PLUS, crear una cuenta de usuario con el nombre IDAT3000 cuya contraseña será: 12345678, con
todos los roles y permisos posibles, presentado en el manual de sesión de clase semana 01. Luego inicie con dicha
cuenta en el PL/SQL.
Desde PL/SQL crear el Script de Base de Datos del modelo relacional presentado, considerando las siguientes
restricciones o CONSTRAINTS.
TABLA CARGO:
o El Nombre del cargo solo debe aceptar: ADMINISTRADOR, GERENTE, SERVICIOS, CONTADOR y
SECRETARIA, mas no otros.
o El campo sueldo solo debe aceptar las siguientes cantidades: 980, 1500, 2500, 3000 y 4000. Más no
otros.
TABLA SEDE:
o Los campos NombreSede y Dirección solo deben aceptar datos escritos en mayúsculas. No se permitirá
ingresar datos en minúsculas.
Guía de Laboratorio
Programación en Base de Datos – Instalación de Oracle 11g 48
______________________________________________________________________
___________________
TABLE EMPLEADO:
o Los Nombres de los empleados siempre en mayúsculas.
o El Campo Sexo, solo debe acepta: MASCULINO, FEMENINO.
o El Dni no debe pasar de ocho dígitos.
o El Campo Estado Civil sólo debe aceptar: SOLTERO, CASADO, VIUDO, DIVORCIADO.
o La dirección siempre en mayúsculas.
o El Campo Estado, sólo debe aceptar: ACTIVO, BLOQUEADO, CESADO, SUSPENDIDO,
DESPEDIDO más no otros.