Уже который раз сталкиваюсь с этим вопросом и каждый раз лезу в Google. Пора уже писать свою статью по этой теме. Чтобы вставить значение в колонку с типом TIMESTAMP или обновить значение в уже существующей записи, нужно использовать TO_TIMESTAMP:
Читать далее Как в Oracle обновить поле TIMESTAMPМетка: Oracle Database
NLS_LENGTH_SEMANTICS и SQL Developer
В Oracle Database существует тип данных VARCHAR2, у которого можно указывать максимальную длину в скобках:
|
1 2 3 4 5 |
CREATE TABLE mytable ( ... myfield VARCHAR2(100) NOT NULL, ... ) |
В коде выше мы указали, что максимальная длина будет 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. В логе — ошибка:
|
1 |
ORA-28001: the password has expired |
(это означает, что срок действия пароля истек) Читать далее ORACLE ORA-28001: THE PASSWORD HAS EXPIRED
ORA-28000: the account is locked
Ошибка: ORA-28000: the account is locked
Описание: Скорее всего пользователь ввел неверный пароль максимальное количество раз, которое указано в профиле пользователя. Параметр FAILED_LOGIN_ATTEMPTS или пользователь был заблокирован DBA.
Oracle следующее значение последовательности
Следующее значение последовательности в Oracle можно получить с помощью псевдоколонки NEXTVAL.
|
1 |
sequence.NEXTVAL |
Аналогично можно получить текущее значение последовательности, но уже с помощью псевдоколонки CURRVAL:
|
1 |
sequence.CURRVAL |
Генерация GUID в Oracle Database
Генерация новых GUID-ов в Oracle осуществляется с использованием функции SYS_GUID(). Пример:
|
1 |
SELECT SYS_GUID() FROM DUAL; |