Рассылка закрыта
При закрытии подписчики были переданы в рассылку "СУБД Oracle "с нуля"" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Сентябрь 2004 → | ||||||
1
|
2
|
3
|
4
|
5
|
||
---|---|---|---|---|---|---|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
26
|
|
27
|
28
|
29
|
Статистика
-8 за неделю
Открыто о СУБД Oracle на русском : Matering Oracle PL/SQL - Введение
Информационный Канал Subscribe.Ru |
Выпуск 73
Уважаемые подписчики рассылки!
Я продолжаю перевод замечательной книги
"Mastering
Oracle PL/SQL: Practical Solutions", и, как и обещал, с разрешения
будущего издателя перевода, киевского издательства
"ДиаСофт", начинаю публиковать фрагменты
своего перевода. Сегодня - из "Введения". Кстати, ваши комментарии и пожелания
(фрагменты какой главы были бы вам наиболее интересны) можно слать мне по электронной
почте.
Один из новых читателей проекта "Открыто о СУБД Oracle на русском" обратил мое внимание на многочисленные опечатки в одном из старых выпусков рассылки. Если вы собираете выпуски, и опечатки вас смущают - исправленную версию можно взять на сайте.
Mastering Oracle PL/SQL: Введение
Об авторах
Коннор МакДональд (Connor McDonald), основной автор, работает с Oracle с начала 1990-х годов. Он начинал работать с базой данных Oracle версий 6.0.36 и 7.0.12. За последние 11 лет он работал с системами в Австралии, Великобритании, Юго-Восточной Азии, Западной Европе и США. Коннор - член сети OakTable и хорошо известен как в кругах докладчиков на темы Oracle, так и в сетевых форумах по СУБД Oracle. Он поддерживает Web-сайт подсказок и советов (http://www.oracledba.co.uk), чтобы поделиться своим энтузиазмом в отношении Oracle и добиться более эффективного использования этой СУБД.
Хаим Кац (Chaim Katz), сертифицированный специалист по Oracle (Oracle Certified Professional), работавший с продуктами Oracle с версии Oracle 4. Он специализируется на администрировании баз данных и разработке приложений на языке PL/SQL и, за эти годы, написал множество статей об Oracle в различные технические журналы. Он учил детей языку программирования Logo и преподавал системы баз данных в колледжах. Он живет в Монреале, Квебек, где, помимо работы с 9 до 5 в сфере информационных систем, он любит изучать Талмуд, играть на кларнете и обсуждать вечные проблемы. Он и его жена Рути (Ruthie) сейчас с удовольствием занимаются проблемами жизни большого семейства.
Кристофер Бек (Christopher Beck), получивший степень бакалавра по компьютерным наукам в университете Рутжерса (Rutgers University), работает в этой области уже 13 лет. Он начинал как младший разработчик программного обеспечения на языке Ada в организации, выполняющей правительственный контракт, а затем провел 9 лет в корпорации Oracle, где он сейчас является ведущим технологом. Он специализируется на основных технологиях базы данных и разработке Web-приложений. Когда он не работает на корпорацию Oracle и не проводит время с женой и четырьмя маленькими детьми, то возится с ОС Linux или играет в дружественную сетевую игру Quake III Arena.
Джоел Кальман (Joel R. Kallman) - менеджер программных проектов в корпорации Oracle. За последние 14 лет он занимался базами данных и системами управления контентом, начиная с баз данных SGML и издательских систем до систем документооборота. Сейчас он управляет разработкой Oracle HTML DB, прикладного решения, позволяющего пользователям легко строить Web-приложения на основе базы данных.
Когда ежедневная работа над высокими компьютерными технологиями не занимает все его время, Джоел занимается футболом, работой по дереву, инвестициями и разработкой в местном 'Y'. Джоел - гордый питомец университета штата Огайо (The Ohio State University), в котором он получил степень бакалавра по вычислительной технике. Он проживает с женой, Кристин, в Пауэле (Powell), штат Огайо.
Дэвид Нокс (David C. Knox) - ведущий инженер гарантийной службы (Information Assurance Center) корпорации Oracle. Он начал работать в корпорации Oracle в июне 1995 года. За этот время он работал над многими проектами по защите для разных клиентов, включая Министерство обороны США (U.S. Department of Defense - DoD), разведывательные управления, федеральное и местные правительства, финансовые службы и организации системы здравоохранения. Его экспертные знания по безопасности компьютерных систем связаны не только с практикой и опытом применения систем защиты сервера Oracle и баз данных, но и с научной работой в области многоуровневой защиты, криптографии, протокола LDAP и PKI. Дэвид получил степень бакалавра по компьютерным системам от Университета Мэриленда (University of Maryland) и степень магистра по компьютерным наукам от Университета Джона Гопкинса (John Hopkins University).
О рецензентах
Якоб Хаммер-Якобсен (Jakob Hammer-Jakobsen) родился в 1965 году. Он получил степень магистра в 1992 году, а работал с Oracle с 1986 года (начав с версии Oracle 5). Он работал, в основном, как создатель бизнес-систем на основе Oracle (и других баз данных), но в последние пять лет он начал переходить и в сферу АБД. Якоб читал всевозможные учебные курсы, связанные с Oracle, по всему миру; последний его курс - "Разработка Java-портлетов". Он сертифицированный разработчик Oracle (Oracle Certified Developer) и участник OakTable.net. Он также работал на Департамент высшего образования, Университет Роскильде (University of Roskilde), Международное студенческое сообщество (International Student Foundation) в Дании (обеспечение жильем), компанию Tom Pedersen International (первый дистрибутор Oracle в Европе), представительство Oracle в Дании, компании Miracle Australia и Miracle Denmark.
Торбен Холм (Torben Holm) - участник сети OakTable. Он занялся компьютерами как разработчик в 1988 году, будучи старшим сержантом Королевских ВВС Дании. Он работал с Oracle с 1992 года - первые 4 года как системный аналитик и разработчик приложений (на базе Oracle 7, Forms 4.0/Reports 2.0 и DBA), затем еще 2 года как разработчик (Oracle 6/7, Forms 3.0, RPT и DBA). Затем он 2 года проработал в представительстве Oracle в Дании, в группе поддержки Prime Services как ведущий консультант - там он решал задачи разработки и администрирования баз данных. Он работал инструктором и читал курсы по PL/SQL, SQL, администрированию баз данных и WebDB. Последние 3 года Торбен работал на Miracle A/S (http://www.miracleas.dk/) как разработчик приложений и АБД. Он - сертифицированный специалист по Oracle Developer 6i (и частично прошел процесс сертификации по Oracle 8i, те шаги, которые надо было пройти, - времени на завершение сертификации у него нет). Его "основной" язык программирования - PL/SQL.
Том Кайт (Tom Kyte) - вице-президент по основным технологиям (VP, Core Technologies) в корпорации Oracle, и имеет более чем 16-летний опыт проектирования и разработки крупномасштабных баз данных и Internet-приложений. Том специализируется на основных технологиях, проектировании и архитектуре приложений, а также настройке производительности. Он ведет регулярную рубрику в журнале Oracle Magazine, а также поддерживает web-сайт AskTom (http://asktom.oracle.com/), где технические специалисты могут получить ответы на интересующие их вопросы. Он также является автором книг Effective Oracle by Design (посвящена лучшим приемам использования СУБД Oracle (и до сих пор не издана недалеким издательством "Лори", имеющим исключительное право на перевод книг Oracle Press и поступающим с ними как "собака на сене" - прим. В.К.)), Expert One-on-One Oracle (описывает создание систем на базе основных технологий Oracle; перевод на русский под названием "Oracle для профессионалов", как вы знаете, вышел в издательстве "ДиаСофт" в 2003 году - прим. В.К.), а также соавтором книги Beginning Oracle, для начинающих разработчиков на базе Oracle.
Введение
Я недавно зашел в сетевой магазин, набрал в окошке поиска PL/SQL, и получил 38 результатов, кроме этой книги. Тридцать восемь книг! Насколько я заметил, ни одна из них не была указана рядом с книгами про Гарри Поттера в списке мировых бестселлеров. Так что же могло бы вдохновить группу авторов собраться вместе для написания тридцать девятой книги на ту же тему?
Причина в том, что, несмотря на множество доступных книг, мы по-прежнему сталкиваемся с некачественным или устаревшим кодом на языке PL/SQL в приложениях для Oracle. Судя по моему опыту работы с системами Oracle по всему миру, хотя приложения, архитектуры и технологии использовались очень разные, но почти у всех этих систем было два общих свойства. Они либо вообще не использовали специфические функциональные возможности Oracle, либо использовали их бессистемно и не оптимально. Это наиболее очевидно в использовании языка PL/SQL, который используется мало и неправильно в большинстве систем, с которыми я сталкивался.
Как минимум, часть проблемы связана с тем, что большинство книг по PL/SQL посвящены только синтаксису. Они показывают, как писать на языке PL/SQL код, который будет компилироваться и работать на вашей машине (в некоторых книгах также представлены хорошие стандарты именования и структуризации кода). Но, как и для любого языка программирования, есть большая разница между просто использованием языка и его правильным использованием. Ключ к созданию успешных приложений - это разумное применение знаний синтаксиса для создания устойчивых, эффективных и простых в сопровождении программ. Именно это побудило нас написать данную книгу и дать ей именно такое название. Мы не хотим сделать из вас программиста на PL/SQL - мы хотим сделать из вас профессионала-программиста, применяющего PL/SQL c умом.
О чем эта книга?
Эта книга предлагает множество советов, приемов и общих стратегий для получения максимальных преимуществ от использования языка PL/SQL в проектах. Дочитав книгу до конца, вы, как и мы, будете убеждены, что PL/SQL - не просто полезный инструмент, а неотъемлемая часть любого приложения Oracle, которое вам придется когда-либо разрабатывать.
Мы продемонстрируем приемы, применимые во всех версиях Oracle, от 8i до 10g. Подавляющее большинство примеров в этой книге было проверено на Oracle 9i R2, и для их выполнения вам понадобиться только утилита SQL*Plus.
Ниже представлено краткое содержание каждой главы, раскрывающее некоторые из ключевых тем этой книги.
Настройка. В следующем разделе книги описано, как настроить эффективную среду SQL*Plus, а также как обеспечить работу средств оценки производительности, которые будут использоваться по ходу изложения, в частности: AUTOTRACE, SQL_TRACE, TKPROF и RUNSTATS.
Глава 1. Эффективность PL/SQL. В этой главе будет раскрыто наше понимание "эффективности PL/SQL" и представлена наполняющая всю книгу тема доказуемости - другими словами, необходимости убедительно доказать, что созданный код удовлетворяет поставленным критериям производительности при всех разумных условиях. Мы продемонстрируем, почему язык PL/SQL почти всегда - лучшее средство программирования сервера, но представим также ситуации, когда PL/SQL может и не подойти, - несколько новаторских возможностей языка SQL, позволяющих вообще избежать процедурного кода.
Глава 2. Объедините все в пакет. Пакеты - это намного больше, чем просто "логически сгруппированные процедуры". Они дают много преимуществ, от перегрузки и инкапсуляции, до защиты от проблем зависимости кода от других объектов и перекомпиляции. В этой главе четко демонстрируются данные преимущества, а также обсуждаются интересные варианты использования некоторых стандартных пакетов Oracle.
Глава 3. Бесконечная тема курсоров. Проблема использования явных и неявных курсоров является предметом давних обсуждений и споров. В этой главе показано, почему не надо использовать явные курсоры так часто, как вам кажется. Мы описываем также эффективное использование курсорных переменных и курсорных выражений в распределенных приложениях.
Глава 4. Эффективная обработка данных. В этой главе показано, как добиться максимальной интеграции структур данных в базе данных и в PL/SQL-программе, что позволяет получить более надежный и устойчивый к изменениям код. Также рассматривается эффективное использование наборов для передачи массивов данных из программы в базу данных и обратно.
Глава 5. Методы оптимизации PL/SQL. В этой главе представлен ряд готовых решений некоторых типичных проблем программирования на PL/SQL. Показано, как избежать скрытой дополнительной обработки, и выявлены "нюансы", с которыми может столкнуться неосмотрительный разработчик.
Глава 6. Триггеры. Рассматриваются основы использования триггеров и эффективное использование некоторых из имеющихся разнообразных типов триггеров. Детально описывается также достаточно новая тема потоков Oracle Streams и показано, как использовать их для организации централизованного журнала аудита данных.
Глава 7. Пакеты АБД. В этой главе представлен "набор инструментальных средств АБД" - набор пакетов, которые можно использовать для автоматизации рутинных административных действий, таких как оценка производительности и выявление проблем, резервное копирование и восстановление, а также контроль сбоев в базе данных.
Глава 8. Пакеты для защиты. Рассматривается использование PL/SQL-пакетов и триггеров для реализации эффективных механизмов защиты в базе данных. Описаны фундаментальные темы использования прав вызывающего и создателя, создания пакетов и проектирования схемы, а затем мы переходим к конкретным решениям таких задач, как аудит действий в базе данных и защита исходного кода.
Глава 9. Пакеты для Web-приложений. В этой главе изучается набор стандартных пакетов под общим названием PL/SQL Web Toolkit - они позволяют разработчикам формировать динамические Web-страницы непосредственно из базы данных. Рассматривается использование "ключиков" (cookies), управление таблицами и файлами, а также непосредственное обращение к Web-службе (Web Service) из хранимой процедуры на языке PL/SQL.
Глава 10. Отладка PL/SQL. Мало кому с первого раза удается выполнять ее правильно, поэтому в данной главе представлен спектр методов эффективной отладки кода на PL/SQL, начиная от простого использования пакета DBMS_OUTPUT до более сложных пакетов вроде DBMS_APPLICATION_INFO и UTL_FILE. Завершается глава разработкой утилиты DEBUG - мощной специализированной утилиты для отладки.
Приложение А. Создание утилиты DEBUG. В этом приложении представлен полный исходный код для утилиты DEBUG, использовавшейся в главе 10.
Для кого предназначена эта книга?
Эта книга предназначена, в основном, для АБД или разработчика, занимающегося реализацией эффективной обработки данных, защиты и механизмов администрирования в базе данных Oracle. Однако она многое даст любому разработчику, приложения которого используют базу данных Oracle и которому нужно глубокое понимание того, как эффективно использовать PL/SQL.
Если вы - абсолютный новичок в PL/SQL, вам стоит потратить некоторое время на знакомство с языком, прежде чем браться за эту книгу. Она не предназначена для начинающих. Но, как только вы освоитесь и начнете работать, мы уверены, эта книга станет ценным руководством, гарантирующим создание устойчивых, высокопроизводительных и простых в сопровождении PL/SQL-решений.
- Коннор МакДональд
Прежние выпуски
Все вышедшие выпуски рассылки можно найти на сайте рассылки. Там же реализована возможность поиска материалов по ключевым словам (с помощью Google...)
В следующих выпусках
Вероятно, опубликую перевод одной из статей Джонатана Льюиса (очень давно и совершенно незаслужено я ничего из его публикаций не переводил). Ну, и публикацию новых фрагментов перевода книги "Mastering Oracle PL/SQL: Practical Solutions" я тоже собираюсь продолжить.
С наилучшими пожеланиями,
В.К.
http://subscribe.ru/
http://subscribe.ru/feedback/ |
Подписан адрес: Код этой рассылки: comp.soft.db.openoracle |
Отписаться |
В избранное | ||