Biblioteca electrónica del administrador del sistema. ¿Qué temas no se tratan?
2 de diciembre de 2014 a las 13:19OraclePL/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.