1. Otros objetos de Esquemas Oracle Database 11g Cap 12 Sql Fundamentals I Alexander Calderón Peraza www.BasesdeDatosUes.Blogspot. com
2. Vista Para un usuario, una vista es lo mismo que una tabla. Las instrucciones DML no funcionan sobre una vista. VENTAJAS Seguridad Simpleza Prevencion de errores Facilidad de datos Rendimiento
3. Mejorando la Seguridad Observe la tabla HR.employees, contiene informacion delicada, sin embargo el depto de finanzas puede requerir alguna informacion, para ello: CREATE VIEW hr.emp_fin AS selecthire_date, job_id, salary, commission_pct, department_idfromhr.employees;
4. Simpleza Se vuelve mas sencillo consultar una vista ya elaborada, que codificar nuestro SQL CREATE VIEW dept_sal as selectd.department_name, sum(e.salary) fromdepartments d leftouterjoinemployees e ond.department_id=e.department_idgroupbydepartment_name; Select * fromdept_sal;
5. Prevenir Errores Dado que las vistas no son actualizables, al brindar acceso a las mismas garantizamos la protección sobre los datos reales. Facilidad de datos La información en las tablas esta normalizada, por lo que dificulta la lectura y entendimiento de la misma.
7. Ejercicio Createviewemp_anon_v as selecthire_date, job_id, salary, commission_pct, department_id, fromemployees; Createviewdept_anon_v as selectdepartment_id, department_name, location_idfromdepartments; Createviewdept_emp as selectdepartment_name, last_namefromdepartmentsjoinemployeesusing (department_id); Select * fromdept_empwheredepartment_name=‘Marketing’;
8. Sinónimo Un sinónimo es un nombre alternativo para un objeto. Select * fromhr.employees@orcl; Createpublicsynonymempforhr.employees@orcl; Entonces cualquier usuario podra ejecutar: select * fromemp;
9. CREATE [PUBLIC] SYNONYM Nombre FOR objeto; Los sinonimos privados son objetos de esquemas. Los sinonimospublicos existen independientes del esquema. Oracle primero busca en los objetos del esquema local, y luego si no encuentra lo busca en los sinonimospublicos. DROP [public] synonym Nombre;
10. SECUENCIA Es una estructura para generar valores enteros únicos. Son de gran utilidad para crear valores de llaves primarias.
11. Sintaxis Indica el incremento para la generación del siguiente numero Máximo valor que puede tomar la secuencia en ascenso antes de generar un error o reiniciar conteo CREATE SEQUENCE NombreSecuencia [INCREMENT BY numero] [START WITH numero] [MAXVALUE numero | NONMAXVALUE] [MINVALUE numero | NOMINVALUE] [CYCLE | NOCYCLE ] [CACHE number | NOCACHE] [ORDER | NOORDER]; Controla el comportamiento de MAXVALUE y MINVALUE, por defecto mostrara un error, pero si CYCLE es especificado reiniciara la secuencia Valor inicial de la secuencia, por defecto 1 Por rendimiento oracle genera un cache de la secuencia de 20 para los siguientes valores Solo para uso en CLUSTER, order obliga a todas las instancias del cluster a coordinar el incremento en la secuencia
12. Utilizando secuencias Cada sesión selecciona su propio valor con NEXTVAL (columna ficticia de la secuencia) Nextval es globalmente unico, para cada sesion se genera uno diferente. CURRVAL es constante para una sesion, hasta que se selecciona NEXTVAL nuevamente. No se puede invocar CURRVAL hasta despues de haber invocado NEXTVAL
14. Índices Los indices tienen dos funciones, para implementar llaves primarias y unicas, y para proveer rendimiento. Llaves foraneas se implementan por medio de indices, pero los indices existen en la tabla padre. Los indices se crean automaticamente. Si no se posee un indice, se realizara un FULL TABLE SCAN.
15. Tipos de Indices B*Tree. Es el tipo usado por defecto B es por Balance El nodo principal de 3 puntos a muchos nodos en el segundo nivel El puntero a una fila es el ROWID Bitmap Son poco utilizados, pues soportan baja cardinalidad.