Oracle Advanced Queuing Notification представляют собой механизм уведомлений, который срабатывает при получении сообщений. В качестве получателя уведомления может использоваться E-Mail, HTTP POST, OCI callback function, Java Messaging Service (JMS) или вызов PL/SQL процедуры.
(далее...)
Всем известный и уважаемый Том Кайт в свое время описывал полезную процедуру под именем
who_called_me, которая позволяет узнать параметры вызывающего в исполняемой функции или процедуре PL/SQL.
(далее...)
В этой статье представлен так называемый быстрый старт для использования технологии
Oracle Streams Advanced Queuing. Последовательно пройдя все примеры, приведенные в статье, можно понять основную суть этой технологии и научиться использовать ее основные функции.
(далее...)
Разработчики информационных систем, работающих с использованием базы данных Oracle, часто пишут клиентские приложения совсем не задумываясь об эффективности, генерируя просто ужасный код как по критерию скорости выполнения, так и по ненужной сложности самого кода.
(далее...)
Нечеткое сравнение строк может потребоваться при выполнении многих задач. Одна из типичных задач – выверка данных и поиск нечетких дубликатов. Когда, например, надо сопоставить “’Медведев” и “Медведёв” и затем как-то объединить эти строки.
(далее...)
Иногда в SQL запросе требуется получить список из заранее заданного набора элементов. Например, список чисел, строк или дат. Для этого можно воспользоваться типами данных, которые предоставляет Oracle.
(далее...)
Зачем эмулировать
Global Temporary Table, если этот механизм и так встроен в базу данных
Oracle? Действительно, незачем, если ваше приложение полностью построено с применением только одного клиента, который может быть написан на чем угодно. Однако может возникнуть ситуация, в которой ваше основное приложение использует результаты вычислений
другого приложения, которое записывает выходные данные в некоторую таблицу, данные из которой и должно считать основное приложение.
(далее...)
Для некоторого класса задач требуется на основании имеющегося массива данных выявить математическую закономерность этих данных или
аппроксимировать эти данные некоторой известной простой математической функцией. Например, характер распределения данных похож на
экспоненциальную функцию, в этом случае при помощи
аппроксимации на основе имеющихся данных можно вычислить
коэффициенты экспоненциальной функции, которая будет максимально адекватно описывать имеющееся распределение.
(далее...)
Если ваше приложение использует сервер
Oracle только как хранилище данных, то особых проблем с защитой от нелегального копирования не возникает. Данные от самого клиента не защитишь, а средства обработки этих данных это клиентские приложения, защитить которые нетрудно стандартными средствами. Однако если ваше приложение интенсивно использует серверный код на
PL/SQL, то проблема защиты этого кода становится достаточно сложной задачей.
(далее...)
Все специалисты
Oracle знают или слышали про внешние процедуры на
C/C++, но мало кто использовал эту возможность при разработке своих приложений. Кроме простых внешних процедур на
C/C++ существует и прекомпилятор
Oracle Pro*C, который позволяет с легкостью использовать в коде на
C/C++ SQL команды.
(далее...)
В некоторых случаях вроде бы в простых запросах можно получить сильную деградацию производительности. Например, простая выборка данных из таблицы с условием в SQL запросе по индексированному столбцу. Что может быть проще? Но распределение данных в таблице может преподносить разнообразные сюрпризы.
(далее...)
В этой статье мы рассмотрим получение
плана выполнения (
Explain Plan)
SQL запросов в
Oracle. При написании и настройке SQL запросов в приложениях очень часто требуется понять, каким образом выполняется запрос, какие запрос использует индексы и использует ли их вообще, какие методы доступа применяет оптимизатор Oracle при выполнении SQL запроса. Узнать это можно построив план выполнения SQL запроса.
(далее...)