Дипломы, курсовые, рефераты, контрольные...
Срочная помощь в учёбе

Псевдостолбцы sequence. 
NEXTVAL и sequence. 
CURRVAL

РефератПомощь в написанииУзнать стоимостьмоей работы

Если перед вставкой новых значений в таблицу нужно выбрать следующий порядковый номер, то для его получения с помощью генератора последовательностей используйте запрос к таблице dual, как показано ниже: После выборки строки можно использовать полученный ROWID в качестве условия для обновления записи служащего, как показано в следующем примере, update emp set salary = 45 000. Как только номер… Читать ещё >

Псевдостолбцы sequence. NEXTVAL и sequence. CURRVAL (реферат, курсовая, диплом, контрольная)

Если перед вставкой новых значений в таблицу нужно выбрать следующий порядковый номер, то для его получения с помощью генератора последовательностей используйте запрос к таблице dual, как показано ниже:

select employee_sequence.nextval from dual;

Как только номер будет выбран, можно проверить последнее выбранное значение с использованием следующего запроса к таблице dual:

select employee_sequence.currval from dual;

Псевдостолбец ROWID

Если прикладная программа должна выбрать данные из таблицы и обновить их позднее, одновременно с выборкой данных необходимо выбрать ROWID из основной таблицы. В дальнейшем при обновлении строки можно повысить производительность, используя ROWID для указания пути доступа к данным. Если к запросу добавлена фраза FOR update, эта строка данных будет заблокирована от любых изменений другими пользователями. Блокировка гарантирует неизменность данных в интервале между выборкой и обновлением. В следующем примере выполняется выборка конкретной записи служащего и блокировка строки данных для обновления:

select rowid, emp _last_name, empjfirst_name, dept_no, salary

from emp

where emp_id = 73

for update;

ROWID EMP_LAST_NAME EMP_FIRST_NAME DEPT_NO SALARY 1 C3A.0007.0002 ZAFIAN JAMES 50 37 500.

После выборки строки можно использовать полученный ROWID в качестве условия для обновления записи служащего, как показано в следующем примере, update emp set salary = 45 000

where rowid = '00001C3A.0007.0002';

Показать весь текст
Заполнить форму текущей работой