Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Zapytanie o aktualizację Oracle w celu aktualizacji rekordów w kolejności sekwencyjnej

To rozwiązanie na to samo pytanie, do którego się odwołujesz, pokazuje, jak to zrobić:

update employee set emp_id = (
  with tab as (
    select emp_id, rownum r
    from   (select emp_id from employee order by emp_id)
  )
  select r from tab where employee.emp_id = tab.emp_id
);

To działa. Nie można zaktualizować widoku, który zawiera funkcję analityczną, taką jak numer_wiersza — zobacz Dokumentacja Oracle 12C , poszukaj „Uwagi o widokach, które można aktualizować”.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy Oracle ma koncepcję filtrowanego indeksu?

  2. Jaki jest domyślny rozmiar danych wejściowych varchar2 do procedury składowanej Oracle i czy można go zmienić?

  3. Sprawdź, czy tabela istnieje, czy nie przed utworzeniem jej w Oracle

  4. Funkcja LITAGG:wynik konkatenacji ciągów jest za długi

  5. Wstawianie wielu wierszy z sekwencją w Oracle