Как получить хэш пароля, полученный алгоритмом bcrypt с префиксом $2y$, прямо из PL/SQL блока? СУБД Oracle не имеет встроенной поддержки bcrypt. Поэтому, чтобы получить хеш в формате bcrypt, нужно использовать дополнительные внешние процедуры.
(далее…)
Начиная с 12c для получения MD5 рекомендуется STANDARD_HASH: https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/STANDARD_HASH.html
Но иногда неуместно работать с RAW.
(далее…)
В БД Oracle существует несколько средств работы с почтой. Среди них для отправки писем имеется два пакета: UTL_MAIL и UTL_SMTP.
(далее…)
На днях возникла простенькая, но нестандартная задачка. Как грамотно отловить ошибку ORA-00942 “Таблица или представление не существует” в обычном PL/SQL блоке при попытке выполнения любой команды DML? Ну есть 2 класса пользователей, одни имеют разрешение на изменение таблицы, другие – нет. Но, т.к. весь блок состоит из нескольких операций, не хотелось создавать копии, отличающиеся одной командой, а разобраться на месте в самом блоке. Ошибка возникает на стадии лексического разбора, поэтому до обработки исключений дело не доходит. Решить такую задачу помогает динамический SQL. (далее…)
Для работы с мультимедиа объектами в БД Oracle существует такая замечательная вещь как Oracle Multimedia(изначально interMedia). Это средство позволяет хранить, обрабатывать и использовать мультимедиа-информацию различной природы. Это могут быть изображения, аудио и видеоданные. Для работы с каждым видом информации в Oracle Multimedia присутсвуют специальные объектные типы, позволяющие хранить информацию непосредственно в ячейках обычных таблиц, а также выполнять некоторый набор преобразований. (далее…)