Как в Oracle обновить поле TIMESTAMP

Уже который раз сталкиваюсь с этим вопросом и каждый раз лезу в Google. Пора уже писать свою статью по этой теме. Чтобы вставить значение в колонку с типом TIMESTAMP или обновить значение в уже существующей записи, нужно использовать TO_TIMESTAMP:

Читать далее Как в Oracle обновить поле TIMESTAMP

NLS_LENGTH_SEMANTICS и SQL Developer

В Oracle Database существует тип данных VARCHAR2, у которого можно указывать максимальную длину в скобках:

В коде выше мы указали, что максимальная длина будет 100. Только вот 100 чего?

Читать далее NLS_LENGTH_SEMANTICS и SQL Developer

Как найти зависший запрос в Oracle

Магические команды для нахождения заблокировавшихся/зависших/взаимно заблокировавшихся запросов/сессий/транзакций в Oracle: Читать далее Как найти зависший запрос в Oracle

Иерархические запросы в Oracle

Данные в реляционных базах данных иногда могут представлять собой иерархическую структуру. В этом случае одно поле таблицы является ссылкой на другую (родительскую) запись в той же самой таблице.

В Oracle Database для этого используется START WITH ... CONNECT BY. Читать далее Иерархические запросы в Oracle

Oracle NULL

На работе делали этакую штучку с кешами. И там была такая вещь, что данные берутся из кеша, а потом на них накладывается фильтр, и этот фильтр должен отработать так, как он бы отработал на Oracle Database.

Я тут вспомнил, что в базах данных обычно любая операция возвращает NULL, если Читать далее Oracle NULL

Oracle Database строку в timestamp

При выполнении запросов в SQL Developer часто бывает нужно заполнить значение для поля TIMESTAMP. Это можно сделать с помощью функции to_timestamp, например: Читать далее Oracle Database строку в timestamp

ORACLE ORA-28001: THE PASSWORD HAS EXPIRED

Приложение перестало соединяться с базой данных Oracle. В логе — ошибка:

(это означает, что срок действия пароля истек) Читать далее ORACLE ORA-28001: THE PASSWORD HAS EXPIRED

ORA-28000: the account is locked

Ошибка: ORA-28000: the account is locked

Описание: Скорее всего пользователь ввел неверный пароль максимальное количество раз, которое указано в профиле пользователя. Параметр FAILED_LOGIN_ATTEMPTS  или пользователь был заблокирован DBA.

Решение: Читать далее ORA-28000: the account is locked

Oracle следующее значение последовательности

Следующее значение последовательности в Oracle можно получить с помощью псевдоколонки NEXTVAL.

Аналогично можно получить текущее значение последовательности, но уже с помощью псевдоколонки CURRVAL:

 

Генерация GUID в Oracle Database

Генерация новых GUID-ов в Oracle осуществляется с использованием функции SYS_GUID(). Пример: