суббота, 7 марта 2015 г.

Oracle 11g PL/SQL, неcколько особенностей

Как и любой язык программирования, PL/SQL имеет свои особенности. Одни особенности делают язык программирования тем, что он есть, и программист использует их постоянно. А без других он может обходиться годами и даже вовсе не подозревать (или забыть) об их существовании.

Например, особенностью Java является необходимость объявлять исключения, которые выбрасывает метод. Без этого не обойтись. Другая особенность Java - невозможность использования одноименных переменных во вложенных блоках. Об этом вспоминаешь не часто. Очень разные вещи, но характерные для Java. А особенностью PL/SQL до версии Oracle 11g было отсутствие предложения CONTINUE - и для его имитации приходилось использовать безусловный переход на метку в конце тела цикла. Теперь эта особенность осталась в прошлом.

Недавно я предпринял систематический обзор PL/SQL по книге Study Guide for 1Z0-144: Oracle Database 11g: Program with PL/SQL: Oracle Certification Prep by Matthew Morris. Про некоторые особенности PL/SQL, которые привлекли мое внимание в процессе чтения, я сегодня и расскажу.

суббота, 14 февраля 2015 г.

Запуск программы по расписанию, или история с сюрпризами

Запуск программы по расписанию в ОС семейста Unix делается cron'ом. Достаточно с помощью утилиты crontab добавить в расписание строку, чтобы указанная команда с указанной периодичностью запускалась демоном cron.

суббота, 24 января 2015 г.

Параллельная обработка с помощью Oracle Scheduler

Можно получить выигрыш в производительности, если выполнять обработку данных параллельно несколькими потоками - в нескольких сеансах Oracle. При помощи пакета DBMS_JOB этого можно было добиться и в более ранних версиях Oracle. Однако Oracle Scheduler, появившийся в версии 10 и усовершенствованный в версии 11, предоставляет для этого более развитые возможности. В этой статье я

  1. кратко рассмотрю цепочки (chains) Oracle Scheduler,
  2. продемонстрирую создание цепочки для параллельной обработки данных,
  3. продемонстрирую организацию параллельной обработки данных без создания цепочки.

суббота, 25 октября 2014 г.

Про время

Я узнал, что время бывает разное:

  • количественное (1 час, 5 января 2014, 3 минуты)
  • и качественное (утро, весна, предвоенное, счастливое).

четверг, 9 октября 2014 г.

Операции над множествами в СУБД Oracle

В СУБД Oracle операции над множествами можно выполнять, как минимум, в трех контекстах с помощью трех различных механизмов. Это

  1. операции над битовыми полями,
  2. операции над вложенными таблицами,
  3. операции над множествами строк таблиц.

В этом порядке они и будут рассмотрены ниже, но сначала - суперкраткое введение в понятие множества.