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

Jak wywołać funkcję z parametrem Rowtype z instrukcji select w Oracle?

Nie możesz tego zrobić za pomocą %ROWTYPE. %ROWTYPE jest w rzeczywistości typem rekordu PL/SQL, który nie jest typem legalnym w SQL, więc nie można go użyć w SELECT. Powinieneś utworzyć typ obiektu, który ma te same kolumny co tabela, zmienić na funkcję, aby oczekiwać tego typu obiektu zamiast %ROWTYPE, a następnie możesz napisać coś takiego:

SELECT function(table1_typ(column1, column2, column3))
  FROM table1 t1

Wady:Nadal musisz wpisać wszystkie kolumny w SELECT, a jeśli zmienisz tabelę, będziesz musiał zmienić również typ obiektu i SELECT.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Połącz się z bazą danych Oracle w aplikacji dotnet mvc

  2. PLS-00103:Napotkałem symbol CREATE

  3. Oracle, PDO_OCI a OCI8

  4. Jak umieścić wartości domyślne dla każdej kolumny w tabeli?

  5. Jak wyświetlić listę wszystkich widoków w bazie danych Oracle