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

Oracle:określenie domyślnej wartości dla kolumny typu obiektu

Wygląda na to, że to niemożliwe.

Jednym z obejść jest użycie wyzwalacza:

CREATE OR REPLACE TRIGGER test_trigger
  BEFORE INSERT OR UPDATE
ON test_table
  FOR EACH ROW
WHEN ( new.test_attr IS NULL )
BEGIN
  :new.test_attr := NEW test_t();
END test_trigger;
/

Nawiasem mówiąc, nie ignoruje całkowicie konstruktorów innych niż domyślne, zastępując konstruktor domyślny

CONSTRUCTOR FUNCTION test_t(in_val NUMBER)
RETURN SELF AS RESULT

prowadzi do wyjątku podczas próby zdefiniowania tabeli za pomocą DEFAULT NEW test_t(1) :




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak napisać zapytanie SQL, które łączy wiele wierszy z tabeli wejściowej w jeden wiersz w tabeli wyjściowej?

  2. Zrozumienie wyników Execute Explain Plan w Oracle SQL Developer

  3. Indeks na widoku (Oracle)

  4. Błąd:typ parametru nie jest obsługiwany w kodzie ADODB klasycznej ASP

  5. Czy można dokonać selekcji do tabeli typu obiektu?