Новое в Oracle 11gR2: снова о склейке нескольких записей в одну строку (listagg)

На протяжении всего времени работы с Oracle меня интересовал вопрос – почему при таком изобилии возможностей групповых вычислений и аналитических расчетов отсутствует такая простая и полезная функция как склейка строк группы записей в одну (т.е. агрегирование строк). В Oracle 11g Release 2 появилась функция listagg, позволяющая агрегировать строки группы в одну и работающая в двух режимах:

  • групповка
  • аналитическая функция

(далее…)

Continue Reading

Настройка соединения СУБД Oracle с MySQL через ODBC

Можно ли с помощью распределенных транзакций получать и передавать данные между СУБД Oracle и СУБД MySQL? Можно! Для этого в Oracle существует сервис гетерогенных (или разнородных) подключений – Heterogeneous Service. И не только с MySQL, но и с другими популярными базами данных.

(далее…)

Continue Reading

Как пересоздать табличное пространство TEMP

Если что-то случилось с табличным пространством, предназначенным для временного хранения информации (TEMP), то его достаточно просто пересоздать. При этом нет никакой необходимости останавливать БД. Если во временном табличном пространстве возникли ошибки, то сама БД их будет попросту игнорировать, а вот операции DML будут приводить к сбоям.

(далее…)

Continue Reading

Особенности настройки Oracle XE

СУБД Oracle XE или Oracle Express Edition в первую очередь предназначена для использования в качестве небольшой базы данных для разработчиков, локальной базы данных для администраторов, студентов или в качестве бесплатной платформы для демонстраций ПО. Ее основные преимущества – абсолютно бесплатное использование и простота в установке и обслуживании. С другой стороны версия начального уровня имеет достаточно серьезные ограничения – в работе БД может быть задействовано максимум 1Гб оперативной памяти, 1 процессор и 4 Гб дискового пространства для хранения данных. И эти ограничения нужно учитывать при распределении ресурсов. (далее…)

Continue Reading

Обработка ошибки ORA-00942 при insert, update, delete

На днях возникла простенькая, но нестандартная задачка. Как грамотно отловить ошибку ORA-00942 “Таблица или представление не существует” в обычном PL/SQL блоке при попытке выполнения любой команды DML? Ну есть 2 класса пользователей, одни имеют разрешение на изменение таблицы, другие – нет. Но, т.к. весь блок состоит из нескольких операций, не хотелось создавать копии, отличающиеся одной командой, а разобраться на месте в самом блоке. Ошибка возникает на стадии лексического разбора, поэтому до обработки исключений дело не доходит. Решить такую задачу помогает динамический SQL. (далее…)

Continue Reading

Обработка изображений. Объект ORDImage

Для работы с мультимедиа объектами в БД Oracle существует такая замечательная вещь как Oracle Multimedia(изначально interMedia). Это средство позволяет хранить, обрабатывать и использовать мультимедиа-информацию различной природы. Это могут быть изображения, аудио и видеоданные. Для работы с каждым видом информации в Oracle Multimedia присутсвуют специальные объектные типы, позволяющие хранить информацию непосредственно в ячейках обычных таблиц, а также выполнять некоторый набор преобразований. (далее…)

Continue Reading

Групповые функции FIRST и LAST

Очень часто при выборке данных появляется задача определения значения первой записи в заданной подгруппе для его дальнейшего использования, например, в качестве параметра. Или еще один распространенный случай: выбрать первую запись из отсортированной выборки. Эту задачу можно решить с помощью псевдостолбца ROWNUM, но тогда потребуется использование вложенного подзапроса, т.к. сначала необходимо выбираемые данные отсортировать. В таких случаях наиболее эффективным решением будет использование групповых функций FIRST и LAST.

(далее…)

Continue Reading

Выборка разности двух множеств и дополнительных полей оставшихся записей

В БД Oracle существует 4 операции с множествами выбранных данных: union - объединение множеств записей, полученных в результате двух выборок union all - добавление всех записей второй выборки к результату…

Continue Reading

Конец ленты публикаций

Больше нет публикаций для загрузки

Close Menu