Это SQL блок я использую в Oracle,ДЛЯ ОБНОВЛЕНИЯ КУРСОРА в терадате?
Теперь мне нужно сделать то же самое в Teradata, возможно? Я хочу синтаксис FOR UPDATE CURSOR в Teradata!
Вы можете мне помочь?
declare
cursor c1 is select * from Employees FOR UPDATE;
a number :=0 ;
begin
for x in c1 loop
a := a +1 ;
update employees set salary = a where current of c1;
end loop;
end;
Зачем вам такой указатель? Это эквивалентно началу транзакции и ее открытию, пока пользователь идет на кофе. Такова смерть для масштабируемости. Гораздо лучший вариант (в Oracle) - использовать оптимистичный параллелизм. Что касается цикла, это просто отрицает любое преимущество в производительности, предоставляемое с помощью базы данных. –