Biblioteca electrónica del administrador del sistema. ¿Qué temas no se tratan?

2 de diciembre de 2014 a las 13:19

OraclePL/SQL. Para profesionales. 6ª edición.

  • Oráculo,
  • SQL
  • Blog de la empresa Editorial "Peter",
  • literatura profesional

¡Hola residentes de Khabro!
Hemos lanzado la sexta reedición del libro.

Prototipo: Programación Oracle PL/SQL (Sexta Edición)
Tapa blanda – 3 Marzo 2014

Estructura del libro:

“Los autores y O'Reilly Media han hecho todo lo posible para cubrir el desarrollo de PL/SQL lo más completamente posible. La sexta edición del libro describe las herramientas y capacidades de PL/SQL para Oracle12c Versión 1; esta versión se considerará la versión de "referencia". Sin embargo, cuando corresponda, el libro hará referencia a otras características que han surgido en años más recientes. versiones anteriores(o disponible sólo en ellos). Lista de características principales diferentes versiones se proporciona en la sección "Historia de PL/SQL" del Capítulo 1. El lenguaje PL/SQL ha pasado largo recorrido desde el lanzamiento de la versión 1.0 para Oracle 6. El libro también ha sufrido cambios importantes para abordar las innovaciones de PL/SQL y se ha agregado nuevo material.

El principal cambio en la sexta edición es descripción detallada todas las nuevas características de PL/SQL en Base de datos Oracle 12c Versión 1. En el Capítulo 1 se proporciona un resumen de estas innovaciones, con enlaces a capítulos que analizan estas innovaciones en detalle. Yo (el autor) estoy muy satisfecho con los resultados de mi trabajo y espero que usted también esté satisfecho con ellos. El libro contiene más información que cualquiera de las ediciones anteriores, pero me parece que logramos mantener el sentido del humor y estilo conversacional una presentación que, como me han informado los lectores a lo largo de los años, ha hecho que este libro sea legible, comprensible y útil".

Parte I. “Programación en PL/SQL”. El capítulo 1 comienza por el principio: ¿Cómo surgió SQL? ¿Para qué es? Lo siguiente es breve descripción general Funciones básicas de PL/SQL. El Capítulo 2 está diseñado para que pueda comenzar a programar de inmediato, con instrucciones claras y instrucciones simples sobre la ejecución de código PL/SQL en el entorno de desarrollo SQL*Plus y algunos otros entornos comunes. El Capítulo 3 cubre los conceptos básicos de PL/SQL: qué son las declaraciones, qué estructura de bloque es, cómo crear comentarios, etc.

Parte II. "Estructura del programa PL/SQL". Los capítulos 4 a 6 cubren declaraciones condicionales (IF y CASE) y secuenciales (GOTO y NULL) que controlan el orden de ejecución de los comandos; ciclos y operador CONTINUAR, introducido en Oracle11; Herramientas de manejo de excepciones en PL/SQL. Esta parte del libro enseña cómo hacer bloques. código de programa, satisfaciendo los complejos requisitos de sus aplicaciones.

Parte III. "Trabajar con datos en PL/SQL". Casi cualquier programa que escriba se ocupará del procesamiento de datos que a menudo es local para un procedimiento o función PL/SQL. Los capítulos 7 a 13 están dedicados a varios tipos datos del programa definidos directamente en PL/SQL: números, cadenas, fechas, marcas de tiempo, registros y colecciones. Aprenderás sobre nuevos tipos. datos de oráculo 11g (SIMPLE_INTEGER, SIMPLE_FLOAT y SIMPLE_DOUBLE), así como muchos de los tipos binarios, de fecha y hora introducidos en otras versiones. Además, cubriremos las funciones integradas proporcionadas por Oracle para realizar diversas operaciones con datos.

Parte IV. "SQL y PL/SQL". Los capítulos 14 a 16 presentan uno de los aspectos centrales de la programación PL/SQL: conectarse a una base de datos desde código SQL. De ellos aprenderá cómo se definen las transacciones de actualización, inserción, fusión y eliminación de tablas de bases de datos; cómo consultar información de una base de datos para procesarla en programas PL/SQL y cómo ejecutar dinámicamente sentencias SQL utilizando NDS (Native Dynamic SQL).

Parte V: Creación de aplicaciones PL/SQL. Esta parte del libro reúne todo lo comentado anteriormente. Cuando empieces a estudiarlo ya sabrás cómo declarar variables y cómo trabajar con ellas, dominarás principios esenciales manejo de errores y construcción de bucles. Los capítulos 17 a 22 cubren los componentes básicos más importantes de las aplicaciones (procedimientos, funciones, desencadenadores y paquetes) y la organización de la entrada y salida en aplicaciones PL/SQL. El Capítulo 20 también analiza la gestión, las pruebas, la depuración y la gestión de dependencias del código PL/SQL; También aquí hay una descripción general del mecanismo. reemplazo operativo introducido en Oracle11g Versión 2. El Capítulo 21 cubre el uso varios instrumentos y técnicas para lograr un rendimiento óptimo en programas PL/SQL. El Capítulo 22 cubre las funciones de E/S de PL/SQL, desde los paquetes DBMS_OUTPUT (salida de pantalla) y UTL_FILE (lectura y escritura de archivos) hasta UTL_MAIL (envío correo electrónico) y UTL_HTTP (recuperación de datos de páginas web).

Parte VI. "Características especiales de PL/SQL". El lenguaje PL/SQL, tan potente y rico, contiene muchas funcionalidad Y elementos estructurales, que no se utilizan en trabajo diario, pero le permitirán resolver problemas de la forma más sencilla y eficaz posible, que serían muy difíciles de afrontar de otras formas. El Capítulo 23 describe los problemas de seguridad que enfrentamos al escribir programas PL/SQL. El Capítulo 24 cubre la arquitectura PL/SQL, incluido el uso de memoria. El capítulo 25 contiene material útil para desarrolladores que necesitan abordar problemas de globalización y localización en sus aplicaciones. El Capítulo 26 proporciona una introducción a las características orientadas a objetos de Oracle (tipos de objetos y vistas).

Los apéndices A a B proporcionan información de sintaxis. expresiones regulares, formatos de número y fecha. código java y C de las aplicaciones PL/SQL incluidas en la cuarta edición impresa se han trasladado al sitio web del libro.

Qué temas no se tratan:

Ni siquiera el libro más grueso puede contarlo todo. Oracle es enorme y sistema complejo, y consideramos sólo las capacidades básicas del lenguaje PL/SQL. A continuación se enumeran temas que no estaban incluidos en el alcance de nuestra publicación y, por lo tanto, solo superficialmente.
se mencionan de vez en cuando.

lenguaje SQL. Se supone que el lector ya lo sabe. lenguaje SQL y sabe componer SELECCIONAR declaraciones, INSERTAR, ACTUALIZAR, FUSIONAR y ELIMINAR.

Administración de base de datos Oracle. Los administradores de bases de datos aprenderán muchas cosas útiles e interesantes de este libro; en particular, aprenderán a escribir programas PL/SQL para crear y mantener bases de datos. Sin embargo, no hemos tenido la oportunidad de hablar sobre los matices del lenguaje de definición de datos (DDL) incluido en Oracle SQL.

Optimización de aplicaciones y bases de datos. El tema de la optimización también se cubre brevemente, aunque el Capítulo 21 analiza muchas de las técnicas y herramientas que le resultarán útiles para optimizar el rendimiento de sus programas PL/SQL.

Tecnologías de desarrollo Aplicaciones de Oracle PL/SQL independiente. El libro ni siquiera intenta demostrar la creación de aplicaciones utilizando herramientas como Formularios de Oráculo Desarrollador, a pesar de que también utilizan el lenguaje PL/SQL. Decidí centrarme en las capacidades fundamentales del lenguaje y las operaciones que puede realizar en bases de datos. Sin embargo, gran parte del material del libro también se aplica al uso de PL/SQL en Forms Developer y Reports Developer.

Se pueden encontrar más detalles

Oracle PL/SQL para profesionales. 6ta edición.

Los autores y O'Reilly Media, Steven Feuerstein y Bill Pribyl, han hecho todo lo posible para cubrir el desarrollo de PL/SQL lo más completamente posible. La sexta edición del libro describe las herramientas y capacidades de PL/SQL para Oracle12c Versión 1; esta versión se considerará la versión de "referencia". Sin embargo, cuando corresponda, el libro mencionará otras características introducidas en (o solo disponibles en) versiones anteriores. PL/SQL ha recorrido un largo camino desde que se lanzó la versión 1.0 para Oracle 6. El libro también ha sufrido cambios importantes para resaltar las novedades de PL/SQL y se ha agregado nuevo material.

Sexta edición del libro " Oracle PL/SQL para profesionales " consta de seis partes. Parte I. "Programación en PL/SQL". El capítulo 1 comienza por el principio: ¿cómo surgió SQL? ¿Para qué sirve? A continuación se ofrece una breve descripción de las principales características de PL/SQL. El Capítulo 2 está estructurado de tal manera que puede saltar directamente a la programación con instrucciones claras y simples para ejecutar código PL/SQL en el entorno de desarrollo SQL*Plus y algunos otros entornos comunes. El Capítulo 3 cubre los conceptos básicos de PL/SQL: qué. son las declaraciones, qué es la estructura de bloque, cómo crear comentarios, etc. Parte II: "Estructura del programa PL/SQL" Los capítulos 4-6 cubren declaraciones condicionales (IF y CASE) y secuenciales (GOTO y NULL) que controlan el orden de. ejecución de comandos y la instrucción CONTINUE introducida en Oracle11 Funciones de manejo de excepciones en PL/SQL Parte III: Trabajar con datos en PL/SQL Casi cualquier programa que escriba manejará datos que a menudo son locales de un procedimiento o función PL/SQL; . Los capítulos 7 a 13 cubren los diversos tipos de datos de programas definidos directamente en PL/SQL: números, cadenas, fechas, marcas de tiempo, registros y colecciones. Aprenderá sobre los nuevos tipos de datos de Oracle11g (SIMPLE_INTEGER, SIMPLE_FLOAT y SIMPLE_DOUBLE), así como muchos de los tipos binarios, de fecha y hora introducidos en otras versiones. Parte IV. "SQL y PL/SQL". Los capítulos 14 a 16 cubren uno de los aspectos centrales de la programación PL/SQL: conectarse a una base de datos desde código SQL. De ellos aprenderá cómo se definen las transacciones de actualización, inserción, fusión y eliminación de tablas de bases de datos; cómo consultar información de una base de datos para procesarla en programas PL/SQL y cómo ejecutar dinámicamente sentencias SQL utilizando NDS (Native Dynamic SQL). Parte V: Creación de aplicaciones PL/SQL. Esta parte del libro reúne todo lo comentado anteriormente. Cuando empieces a estudiarlo, ya sabrás cómo declarar variables y cómo trabajar con ellas, y dominarás los principios más importantes del manejo de errores y la construcción de bucles. Parte VI. "Características especiales de PL/SQL". El lenguaje PL/SQL, tan potente y rico, contiene una gran cantidad de funcionalidades y elementos estructurales que no se utilizan en el trabajo diario, pero que permiten resolver de la forma más sencilla y eficaz problemas que serían muy difíciles de resolver en otros maneras. El Capítulo 23 describe los problemas de seguridad que enfrentamos al escribir programas PL/SQL. El Capítulo 24 cubre la arquitectura PL/SQL, incluido el uso de memoria. El Capítulo 25 contiene material útil para desarrolladores que necesitan abordar problemas de globalización y localización en sus aplicaciones. El Capítulo 26 proporciona una introducción a las características orientadas a objetos de Oracle (tipos de objetos y vistas).

Un programador principiante en PL/SQL debería leer este libro de principio a fin; mejorará sus habilidades y profundizará su conocimiento de PL/SQL. Es posible que los desarrolladores experimentados de PL/SQL solo necesiten familiarizarse con ciertas secciones para aprender técnicas prácticas de programación específicas.

Editor - Pedro

Año de publicación - 2015

Formato del libro - PDF

Tamaño - 10,9 MB

para profesionales

casa comercial y editorial

Moscú San Petersburgo Kyiv 2003

UDC 681.3. 06(075)BBK32.973.2

K 91 COMETA TOM

K 91 Oráculo para profesionales. Por. De inglés/TomKaitSPb.: DiaSoftYUP LLC, 2003. - 672 p.

ISBN 5-93772-072-5

La publicación de este libro de Wrox a finales del año pasado marcó un hito: por primera vez se revelaron de forma clara y completa las principales características de la arquitectura. SGBD Oracle, distinguiéndolo fundamentalmente de los demás sistemas populares gestión de bases de datos. Además, exactamente aquellas capacidades, herramientas y características de Oracle que proporcionan desarrollo se describen en detalle y se ilustran con muchos ejemplos. aplicaciones efectivas para este DBMS y su exitoso funcionamiento.

El autor del libro, Tom Kite, ha trabajado durante mucho tiempo con Oracle DBMS, creando aplicaciones y administrando bases de datos. Durante muchos años, ha estado resolviendo profesionalmente los problemas que surgen al utilizar Oracle DBMS para administradores y desarrolladores de todo el mundo. En el sitio web exclusivo de Oracle Corporation (http://asktom.oracle.com), Tom Kite responde docenas de preguntas al día. No sólo comparte conocimientos, sino que también anima hábilmente al lector a experimentar de forma independiente. Siguiendo el camino que te indicó te conviertes en un Profesional.

Traducción autorizada de la edición en inglés, titulada Expert One-on-One Oracle, 1.ª edición de Kyte, Thomas, publicada por Pearson Education, Inc, publicada como Wrox Press Ltd.

Derechos de autor © 2002

Reservados todos los derechos. Ninguna parte de este libro puede reproducirse ni transmitirse de ninguna forma ni por ningún medio, electrónico o mecánico, incluidas fotocopias, grabaciones o cualquier sistema de recuperación de almacenamiento de información, sin el permiso de Pearson Education, Inc.

Edición en ruso publicada por DiaSoft Publishing. Derechos de autor © 2003

Con licencia de Wrox Press Ltd.

Todos los derechos reservados, incluido el derecho de reproducción total o parcial en cualquier forma.

El material presentado en este libro ha sido probado muchas veces. Pero dado que la probabilidad errores técnicos todavía existe, la editorial no puede garantizar la absoluta exactitud y corrección de la información proporcionada. En este sentido, el editor no es responsable de posibles errores relacionados con el uso del libro.

Todas las marcas comerciales mencionadas en esta publicación están registradas. Aleatorio mal uso u omisión de una marca comercial o del nombre de su legítimo propietario no se considerará una infracción de los derechos de propiedad.

Conclusión higiénica No. 77.99.6.953.P.438.2.99 de fecha 04/02/1999

Queridos lectores!

Probablemente se hayan escrito y publicado más libros sobre Oracle DBMS tanto en inglés como en ruso que sobre todos los demás. SGBD relacional conjunto. Muchos de estos libros son útiles e interesantes. Además, en redes de internet Decenas de miles de páginas de documentación están disponibles para que las utilicen los desarrolladores, los administradores de bases de datos de Oracle y los usuarios. Se publican artículos en revistas, en el sitio web corporativo de Oracle (http://www.oracle.com) y en docenas de sitios independientes sobre todos los aspectos de la administración y el uso de este DBMS.

Sin embargo, la aparición a finales del año pasado de este libro de la editorial Wrox marcó un hito: por primera vez se describen las características principales de la arquitectura DBMS de Oracle, que lo distinguen fundamentalmente de otros sistemas de gestión de bases de datos populares. , fueron revelados de manera clara y completa. Además, se describen en detalle e ilustran con muchos ejemplos exactamente aquellas capacidades, herramientas y características de Oracle que garantizan el desarrollo de aplicaciones eficaces para este DBMS y su funcionamiento exitoso.

Durante años, él, un empleado de Oracle Corporation, ha estado resolviendo profesionalmente los problemas que surgen al utilizar Oracle DBMS para administradores y desarrolladores de todo el mundo. En los grupos de discusión comp.databases.oracle.* y en Oracle Magazine, y en últimos años- También en el sitio web especializado de Oracle Corporation (http://asktom.oracle.com), Tom Kite responde a decenas de preguntas al día.

Llegué a este sitio por casualidad, siguiendo un enlace en uno de los documentos encontrados por un glorioso motor de búsqueda. sistema de google. Luego se convirtió en visitante semanal y, con el tiempo, diario. Me atrajo la variedad de problemas considerados y la elegancia de sus soluciones. La presentación de Tom Kite lo hace sencillo. Al mismo tiempo, no solo comparte conocimientos, sino que también empuja hábilmente al lector a realizar experimentos independientes. Siguiendo el camino indicado por él te conviertes en un Profesional.

Por lo tanto, quedé muy satisfecho con el anuncio del lanzamiento del libro de Tom Kite "Expert one-on-one: Oracle", e hice todo lo que estuvo a mi alcance para que la editorial DiaSoft publicara su traducción. No podía confiar esta traducción a nadie y la hice yo mismo. Si el texto en ruso es claro y agradable de leer, es sólo gracias a la increíble editora literaria Zh. Prusakova, que me ayudó a trabajar en el libro. Agradezco a ella, así como al personal de la editorial DiaSoft por el apoyo y esfuerzo que hicieron para publicar este libro. .

El libro original es muy grande, más de 1200 páginas. En la traducción rusa, con autorización de la editorial Wrox, se divide en dos partes. Queríamos publicar la parte del libro que es más importante para utilizar con éxito el DBMS de Oracle lo más rápido posible. Ahora que estás leyendo la primera parte, dedicada a la arquitectura y principales capacidades del DBMS Oracle, se continúa trabajando en la segunda parte; se lanzará unos meses después.

Prólogo del editor científico

Intentamos que el libro fuera lo más útil y fácil de leer posible: corregimos los problemas identificados por los lectores. versión en inglés Los errores enumerados en el sitio web de publicación de Wrox coinciden en la terminología.

Si está comenzando a estudiar Oracle DBMS, comience con este libro. Si usted desarrollador experimentado aplicaciones o un administrador de bases de datos Oracle: léalo y compruebe si conoce este DBMS lo suficientemente profundo y si puede utilizar sus capacidades. Encontrarás en el libro decenas de consejos, descripciones de técnicas y métodos para resolver problemas que nunca supiste que existían.

Y, por supuesto, recomiendo leer las brillantes respuestas y recomendaciones de Tom Kite en su sitio web actualizado diariamente. Pregunta a Tom: http://asktom.oracle.com. Si Oracle Corporation se convierte en el líder indiscutible y generalmente reconocido en el mercado de fabricantes software, luego en gran medida debido a qué y cómo beneficia a los usuarios. productos de software una persona: ¡Tom Kite!

V. Kravchuk, Iniciativa OpenXS (http://openxs.net)

Introducción

¿De qué trata este libro?

¿Para quién es este libro?

Estructura del libro

Conceptos básicos

Estructuras y utilidades de bases de datos

Actuación

Funciones SQL avanzadas

Extensibilidad

Aplicaciones

Características tipográficas del libro.

Contactos con lectores

Código fuente y actualizaciones.

Capítulo 1. Desarrollo aplicaciones exitosas para oráculo

mi enfoque

Enfoque de caja negra

Cómo (y cómo no) desarrollar aplicaciones de bases de datos

Comprender la arquitectura de la base de datos Oracle

Evite transacciones largas en el entorno MTS

Usar variables de enlace

Funciones de control de concurrencia

Implementación del bloqueo.

multivariado

¿Independencia del DBMS?

Impacto de las normas

Características y funciones

Resolver problemas simplemente

Franqueza

¿Cómo acelerar el trabajo?

Relación entre DBA y desarrolladores

Capítulo 2. Arquitectura

Archivos de parámetros

Archivos de datos

Archivos temporales

Archivos de control

Rehacer archivos de registro

Registro de rehacer activo

Registro de rehacer archivado

Estructuras de la memoria

Áreas PGA y UGA

área SGA

Área SGA Fija

Rehacer búfer de registro

caché de búfer

piscina compartida

piscina grande

Procesos

Procesos del servidor

Servidor dedicado y compartido

Procesos en segundo plano

Procesos en segundo plano diseñados para realizar tareas específicas.

Procesos en segundo plano del servicio

Procesos esclavos

Procesos de E/S esclavos

Procesos esclavos de consultas paralelas

Capítulo 3. Bloqueo y acceso simultáneo

¿Qué son las cerraduras?

Problemas de bloqueo

cambios perdidos

Bloqueo pesimista

Bloqueo optimista

Bloqueo

Inserciones bloqueadas

Cambios y eliminaciones bloqueados

Puntos muertos

Escalada de bloqueo

tipos de cerraduras

bloqueo NMD

TX - bloqueo de transacciones

TM - Bloqueo de cola NMD

Bloqueo de armas nucleares

Pestillos y cerraduras internas.

Bloqueo manual. Cerraduras definidas por el usuario

Bloqueo manual

Creando tus propias cerraduras

¿Qué es el control de concurrencia?

Niveles de aislamiento de transacciones

Nivel de aislamiento LEER NO COMPROMETIDO

Nivel de aislamiento LEER COMPROMETIDO

Nivel de aislamiento LECTURA REPETIBLE

Obtener una respuesta consistente

Evitar que se pierdan los cambios

Nivel de aislamiento SERIALIZABLE

Transacciones de solo lectura

Capítulo 4. Transacciones

Declaraciones de control de transacciones

Requisitos de integridad y transacciones

Malos hábitos al trabajar con transacciones.

Transacciones distribuidas

Rehacer registros y revertir segmentos

Capítulo 5: Reejecución y reversión

Reejecución

¿Qué pasa al comprometerse?

¿Qué sucede durante una reversión?

¿Cuántos datos de rehacer se generan?

¿Es posible desactivar la generación de entradas del registro de rehacer?

¿No puedes asignar un nuevo registro?

Limpiar bloques

Conflictos de acceso al registro

Tablas temporales y datos de rehacer/revertir

Análisis de datos de reproducción

¿Qué genera la mayor/menor cantidad de datos de cancelación?

Declaración SET TRANSACCIÓN

"ORA-01555: instantánea demasiado antigua"

Los segmentos de reversión son muy pequeños.

Los datos se recuperan en múltiples transacciones.

Limpieza de bloques retrasada

Capítulo 6. Tablas

Tipos de mesa

Terminología

Marca de nivel máximo

Listas de plazas disponibles

Parámetros PCTFREE y PCTUSED

salto de línea

Configuración de valores PCTFREE y PCTUSED

Parámetros INICIAL, SIGUIENTE y PCTINCREASE

Parámetros MINEXTENTS y ​​MAXEXTENTS

Parámetros LOGGING y NOLOGGING

Parámetros INITRANS y MAXTRANS

Tablas organizadas como un montón.

Tablas organizadas por índice

Tablas en el grupo de índice

Tablas en un grupo hash

mesas anidadas

Sintaxis de tabla anidada

Almacenamiento de tablas anidadas

Tablas temporales

Tablas de objetos

Descripción general de los índices en Oracle

Índices de árbol B*

Índices con clave corrupta

Índices descendentes

¿Cuándo tiene sentido utilizar un índice de árbol B*?

Índices basados ​​en mapas de bits

¿Cuándo tiene sentido utilizar un índice basado en mapas de bits?

Índices por función

Detalles importantes de implementación

Un ejemplo de uso de un índice en una función.

Trampa

Índices de aplicaciones

Preguntas frecuentes sobre índices

¿Los índices funcionan en las vistas?

Índices y nulos

Índices de clave externa

¿Por qué no se utiliza mi índice?

¿Se utilizaron índices?

Mito: el espacio del índice nunca se reutiliza

Mito: columnas con número máximo diferentes significados debería

ser listado primero

Capítulo 8. Importación y Exportación

Ejemplo sencillo

¿Cuándo pueden resultar útiles las utilidades IMP y EXP?

Detección de daños

Extracción de operadores DML

Circuitos de clonación

Migrar espacios de tablas

Reinstanciación

Copiar datos de una plataforma a otra

Características del uso de utilidades.

Parámetros de la utilidad EXP

Parámetros de utilidad

Exportar grandes volúmenes datos

Usando el parámetro FILESIZE

Exportar por partes

Exportar a una tubería con nombre

Exportar a un dispositivo que no admite absoluta

direccionamiento

Aislamiento de subconjuntos de datos

Transferencia de datos

Obtención de operadores DML

Superar las limitaciones con los scripts

Copia de seguridad y restauración

Las utilidades IMP/EXP (ya no son) herramientas de reorganización

Importar a otras estructuras

Exportación directa

Problemas y errores

Clonación

Uso diferentes versiones Utilidades IMP/EXP

¿A dónde fueron los índices?

Requisitos nombrados explícita y automáticamente

Soporte de idioma nacional (NLS)

Tablas ubicadas en múltiples espacios de tablas.

Introducción al cargador SQL*

como hacer

Cambiar filas existentes y colocando otros nuevos

Usar un carácter diferente en lugar de un carácter de nueva línea

Usando el atributo FIX

Usando el atributo VAR

Usando el atributo STR

Cómo simplificar el manejo de nuevas líneas

Subiendo datos

Llamar a la utilidad SQLLDR desde un procedimiento almacenado

Problemas

No se puede seleccionar el segmento de reversión

TRUNCATE funciona de manera diferente

El tipo de campo estándar en SQLLDR es CHAR(255)

Opciones línea de comando anular la configuración en el archivo por lotes

Capítulo 10. Estrategias y herramientas de ajuste

Definición del problema

mi enfoque

La personalización es un proceso continuo.

Diseño para el rendimiento

Pruebe diferentes enfoques

Utilice programación defensiva

Comprobar rendimiento

Vinculación de variables y análisis (una vez más)

¿Se utilizan variables de vinculación?

SQL_TRACE, TIMED_STATISTICS y TKPROF

Organización del rastreo

Uso e interpretación de los resultados de la utilidad TKPROF.

Uso e interpretación de archivos de seguimiento de origen

Paquete DBMS_PROFILER

Herramientas de control y depuración.

Conjunto de utilidades StatsPack

Instalación de utilidades StatsPack

V$ vistas

VerV$EVENT_NAME

Vistas V$FILESTAT y V$TEMPSTAT

VerV$LOCK

Ver V$MYSTAT

Ver V$OPEN_CURSOR

Vista V$PARAMETRO

VerV$SESSION

VerV$SESSION_EVENT

VerV$SESSION_LONGOPS

VerV$SESSION_WAIT

VerV$SESSTAT

VerV$SESS_IO

Vistas V$SQL y V$SQLAREA

Representación V$STATNAME

Ver V$SYSSTAT

Ver V$SYSTEM_EVENT

Capítulo 11. Estabilización del plan optimizador

Método de configuración

Herramienta de desarrollo

Comprobación del uso del índice

Obtener una lista de sentencias SQL ejecutadas por una aplicación

Cómo se estabiliza el plan optimizador

Vistas OUTLINES y OUTLINE_HINTS

Vistas_OUTLINES

_OUTLINE_HINTS vistas

Crear plantillas almacenadas

Privilegios necesarios para crear plantillas almacenadas

Usando operadores DML

Usando la declaración ALTER SESSION

Usuario OUTLN

Transferir plantillas de una base de datos a otra

Obtener la plantilla que necesita

Gestión de plantillas

Operadores NDL

ALTERAR ESQUEMA declaración

Declaración DROP OUTLINE

Paquete OUTLN_PKG

Procedimiento OUTLN_PKG.DROP_UNUSED

ProcedimientoOUTLN_PKG.DROP_BY_CAT

ProcedimientoOUTLN_PKG.UPDATE_BY_CAT

Problemas

Nombres de patrones y mayúsculas y minúsculas

problema con ALTERAR operador SESIÓN

La declaración DROP USER no elimina las plantillas

Plantillas y el parámetro "CURSOR_SHARING =

Las plantillas utilizan una comparación de texto simple

Las plantillas se almacenan en el espacio de tabla SISTEMA de forma predeterminada.

O Divulgación de condiciones

Actuación

Espacio de nombres de plantilla: global

Errores que puedes cometer

Índice de materias

Capítulo 12. Funciones analíticas

Cómo funcionan las funciones de análisis

Sintaxis

Diseño de fragmentación

Construcción de ordenamiento

Diseño de ventana

Ventanas de rango

Ventanas en fila

Definiendo ventanas

Consulta primero N

Consulta con transposición

Accediendo a líneas alrededor de la línea actual

Problemas

Funciones analíticas en PL/SQL

Funciones analíticas en la cláusula WHERE

Valores NULL y clasificación

Actuación

Capítulo 13. Vistas materializadas

Fondo

¿Qué se necesita para completar los ejemplos?

Propósito de las vistas materializadas

Cómo trabajar con vistas materializadas

Preparación

Implementación interna

Reescribir una consulta

Cómo garantizar que se utilicen las vistas

Requisitos de integridad

Medidas

Paquete DBMS_OLAP

Estimación de tamaño

Comprobación de la fiabilidad de las mediciones.

Problemas

Las vistas materializadas no están destinadas a sistemas OOT

Integridad de la consulta al reescribir

Capítulo 14. Fragmentación

Usando fragmentación

Aumento de la disponibilidad de datos

Administración simplificada

Mejora de la productividad de los operadores y consultas de NMD

Cómo se realiza la fragmentación

Esquemas de fragmentación de tablas

Fragmentación del índice

Índices fragmentados localmente

Índices globalmente fragmentados

Capítulo 15. Transacciones Autónomas

¿Cuándo utilizar transacciones autónomas?

Compruebe cuyas entradas no se pueden deshacer

Método para evitar el error del cambiador

Ejecutar declaraciones DML en desencadenadores

Entrada de base de datos

Inspección estricta

Cuando el entorno permite que solo se ejecuten sentencias SELECT

Desarrollo de código modular

Cómo funcionan las transacciones autónomas

Ejecutar una transacción

Alcance

Variables del paquete

Configuración/opciones de sesión

Cambios en la base de datos

Cabellos

Completar una transacción autónoma

Guardar puntos

Problemas

No se puede utilizar en transacciones distribuidas.

Sólo en entorno PL/SQL

Toda la transacción se revierte

Tablas temporales a nivel de transacción

Cambiadores

Capítulo 16. SQL dinámico

Comparación de SQL dinámico y estático

¿Cuándo utilizar SQL dinámico?

Usando SQL dinámico

Paquete DBMS_SQL

SQL dinámico incorporado

Comparación del paquete DBMS_SQL y SQL dinámico incorporado

Variables vinculantes

El número de columnas de salida se desconoce en el momento de la compilación.

Ejecución repetida de la misma declaración.

Problemas

Rompiendo la cadena de dependencia

"Fragilidad" del código

Dificultad para configurar

Breve excursión histórica

Uso del componente de texto interMedia

Buscar texto

Gestión de documentos heterogéneos

Indexación de texto de varias fuentes de datos

Componente interMedia Text: parte de la base de datos Oracle.

Análisis semántico

Buscar en aplicaciones XML

Cómo funciona el componente InterMedia Text

Indexación con texto interMedia

ACERCA DEL operador

Secciones de búsqueda

Problemas

componente intermedio El texto es NO es un sistema de gestión de documentos

Sincronización de índices

Indexación de información fuera de la base de datos

Servicios de procesamiento de documentos

catálogo índice

Posibles errores

Índice desactualizado

Errores de procedimiento externo

Mayor desarrollo

Capítulo 18. Procedimientos externos en lenguaje C.

¿Cuándo se utilizan procedimientos externos?

¿Cómo se implementa el soporte a los procedimientos externos?

Configuración del servidor

Comprobando el programa extproc

Comprobación del entorno del servidor

Comprobando el proceso de audición.

primer cheque

Compilando código extproc.c

Ajustes cuenta SCOTT/TIGRE

Creando biblioteca de demolición

Instalación y lanzamiento

Nuestro primer procedimiento externo

Caparazón

Código en lenguaje C

Crear un procedimiento externo

Instalación y lanzamiento

Procedimiento externo para resetear objeto grande presentar (LOB_IO)

Especificación del paquete LOB_IO

Código Pro*C para el paquete LOB_IO

Crear un procedimiento externo

Instalación y uso del paquete LOB_IO

Posibles errores

Capítulo 19. Procedimientos almacenados en Java

¿Cuándo se utilizan los procedimientos almacenados en Java?

Cómo funcionan los procedimientos externos en Java

Transferencia de datos

Ejemplos útiles

Generando una lista de archivos de directorio

Ejecutar comando del sistema operativo

Obtenga el tiempo con una precisión de milisegundos

Posibles errores

ORA-29549 Estado de sesión de Java borrado

Errores de permiso

ORA-29531 sin método X en la clase Y

Capítulo 20: Uso de herramientas relacionales de objetos

¿En qué casos se utilizan herramientas relacionales de objetos?

Cómo funcionan las herramientas relacionales de objetos

Agregar nuevos tipos de datos al sistema

Uso de tipos para ampliar el lenguaje PL/SQL

Crear un nuevo tipo de datos PL/SQL

Formas únicas de utilizar los kits

SELECCIONAR * desde una función PL/SQL

Muestreo múltiple de datos en un registro

Insertar registros

Representaciones relacionales de objetos

Tipos requeridos

Representación relacional de objetos

Capítulo 21. Control de acceso exhaustivo

¿Cuándo debo utilizar este producto?

Fácil de mantener

El control de acceso se realiza en el servidor.

Simplifique el desarrollo de aplicaciones

Desarrollo de aplicaciones evolutivas

Darse de baja de cuentas compartidas

Soporte para cuentas compartidas

Proporcionar acceso a una aplicación como servicio.

Cómo se implementan los estrictos controles de acceso

Ejemplo 1: Implementación de reglas de seguridad

Ejemplo 2: uso de contextos de aplicación

Problemas

Integridad del enlace

canal secreto

Eliminando filas

Almacenamiento en caché del cursor

Exportar/Importar

Problemas de exportación

Problemas de importación

Errores que pueden ocurrir

Capítulo 22. Autenticación multinivel

¿Cuándo utilizar la autenticación multinivel?

Mecanismo de autenticación multinivel

Conceder un privilegio

Comprobación de cuentas intermedias

Problemas

Capítulo 23. Derechos del llamante y del creador

Cuándo utilizar los derechos de persona que llama

Desarrollo de utilidades universales.

Aplicaciones que funcionan con un diccionario de datos

Tipos de objetos genéricos

Implementación fondos propios control de acceso

Cuándo utilizar los derechos de creador

Rendimiento y escalabilidad

Cómo funcionan los procedimientos con derechos de persona que llama

Derechos del creador

Elaboración de un procedimiento con derechos de creador

Derechos de la persona que llama

Resolver enlaces y transferir privilegios

Compilación de un procedimiento con derechos de llamante

Usar objetos de plantilla

Problemas

Derechos de llamada y uso del grupo compartido

Actuación

Código de manejo de errores más robusto

Efectos secundarios del uso de SELECT*

Tenga cuidado con las columnas "ocultas"

Java y derechos de la persona que llama

Posibles errores

Apéndice A. Conceptos básicos paquetes estándar

Cuándo utilizar paquetes estándar

Acerca de los paquetes estándar

Paquetes DBMS_ALERT y DBMS_PIPE

Cuándo utilizar señales y canales

Ajustes

Paquete DBMS_ALERT

Señales simultáneas para múltiples sesiones.

Transmisión de señal repetida en una sesión.

Transmitir múltiples señales durante múltiples sesiones antes de una llamada

procedimientos de espera

Paquete DBMS_PIPE

¿Servidores de canal o procedimientos externos?

Ejemplo en internet

Paquete DBMS_APPLICATION_INFO

Uso de la información del cliente.

Usando la vista V$SESSION_LONGOPS

Paquete DBMS_JAVA

1 584

Funciones NOMBRE LARGO y NOMBRE CORTO

Configuración de opciones del compilador

ProcedimientoSET_OUTPUT

Procedimientos Loadjava y Dropjava.

Procedimientos de gestión de derechos

Paquete DBMS_JOB

Ejecutar una tarea una vez

Tareas actuales

Planificación no trivial

Monitoreo de trabajos y detección de errores.

¿Cómo subir objetos grandes?

función substr

SELECCIONE PARA ACTUALIZAR la declaración en Java

Transformaciones

Conversión de BLOB a VARCHAR2 y viceversa

Conversión de datos RAW LARGO/LARGO a un objeto grande

Ejemplo de conversión múltiple de un solo tipo

Conversión de tipos de datos en línea

Escribir valores de objetos BLOB/CLOB en el disco

Representar un objeto grande en una página web usando PL/SQL

Paquete DBMS_LOCK

Paso 1: crear un diccionario de datos

Paso 2: usar las herramientas de LogMiner

Opciones y uso

Determinar con LogMiner cuándo

Usando el área de la PGA

Limitaciones del paquete LogMiner

Tipos de objetos de Oracle

Filas movidas o fragmentadas

Otras restricciones

VerV$LOGMNR_CONTENTS

Paquete DBMS_OBFUSCATION_TOOLKIT

Paquete de envoltura

Problemas

Gestión de claves

Generar y almacenar claves en la aplicación cliente.

Almacenamiento de claves en la misma base de datos.

Almacenamiento de llaves en sistema de archivos servidor de base de datos

PaqueteDBMS_OUTPUT

Cómo funciona el paquete DBMS_OUTPUT

Paquete DBMS_OUTPUT en otros entornos

Evitar restricciones

Usando una pequeña función contenedora u otro paquete

Creando un análogo del paquete DBMS_OUTPUT

Problemas

Paquete DBMS_UTILITY

Procedimiento COMPILE_SCHEMA

ProcedimientoANALYZE_SCHEMA

Aplicar el procedimiento ANALYZE_SCHEMA a un esquema cambiante

El procedimiento ANALYZE_SCHEMA no analiza todo

ProcedimientoANALYZE_DATABASE

Función FORMAT_ERROR_STACK

Función FORMAT_CALL_STACK

Manejo de excepciones

¿Cómo volcar una página web al disco?

Límite de longitud de cadena -1023 bytes

Leer el contenido de un directorio

Paquete UTL_HTTP

Características del paquete UTL_HTTP

Agregar soporte protocolo SSL en el paquete UTL_HTTP

Uso real del paquete UTL_HTTP

Versión mejorada del paquete UTL_HTTP

Paquete UTL_RAW

Paquete UTL_SMTP y envío de correo electrónico

UTL_SMTP: ejemplo de uso avanzado

PaqueteUTL_TCP

Tipo de enchufe

Apéndice B. Soporte, errores y sitio web p2p.wrox.com

Foros en p2p.wrox.com

Cómo obtener apoyo

Por qué este sistema proporciona el mejor soporte

Encuentre información sobre errores en www.wrox.com

Encontrar información de error en un sitio web

Agregar información de error

Mi nombre es Tom Kite. Trabajo para Oracle Corporation desde la versión 7.0.9 (para aquellos que no miden el tiempo según las versiones de Oracle, déjenme aclarar, desde 1993). Sin embargo, he trabajado con Oracle DBMS desde la versión 5.1.5c (una versión de usuario único para DOS que cuesta $99 en disquetes de 360 ​​KB). Antes de Oracle Corporation, trabajé durante más de seis años. integrador de sistemas, creando bases de datos y aplicaciones heterogéneas a gran escala (principalmente para agencias gubernamentales y de defensa). Durante este período, trabajé mucho con el DBMS de Oracle, o mejor dicho, ayudé a los usuarios de las bases de datos de Oracle. Trabajé directamente con clientes durante las fases de especificación y construcción de sistemas, pero la mayoría de las veces ayudé a reconstruir o personalizar sistemas (“personalización” generalmente equivalía a reelaboración). También soy el Tom que dirige la columna "AskTom" en Oracle Magazine, respondiendo preguntas de los lectores sobre el servidor y las herramientas. herramientas de oráculo. Normalmente recibo y respondo entre 30 y 40 preguntas al día en http://asktom.oracle.com. Cada dos meses publico una selección de las mejores preguntas con respuestas en la revista (las respuestas a todas las preguntas están disponibles en la Web y, por supuesto, se almacenan en la base de datos Oracle). En general, lo que hago es ayudar a las personas a operar con éxito el DBMS de Oracle. Sí, y en tiempo libre Desarrollo aplicaciones y software dentro de Oracle Corporation.

Este libro describe lo que hago todos los días. El material que se ofrece en él está dedicado a temas y preguntas que los usuarios encuentran constantemente. Todos los problemas se ven desde la perspectiva de "si uso esto, entonces haz esto...". Mi libro es el resultado muchos años de experiencia utilizando Oracle DBMS en miles de situaciones diferentes.

gracias 15

Expresiones de gratitud

También me gustaría agradecer a los usuarios del software Oracle por hacer tantas preguntas. buenas preguntas. Si no fuera por ellos, nunca se me habría ocurrido escribir este libro. Mayoría La información presentada aquí es el resultado directo de que alguien haya preguntado "cómo" o "por qué".

Por último, y lo más importante, agradezco el continuo apoyo de mi familia. Cuando escuchas por enésima vez: “Papá, ¿por qué sigues escribiendo este libro?”, comprendes que alguien te necesita. Simplemente no puedo imaginar cómo habría terminado este libro sin el apoyo constante de mi esposa Laurie, mi hijo Alan y mi hija Megan.




Arriba