sql >> Database teknologi >  >> RDS >> Oracle

Oracle:angiver standardværdi for objekttypekolonnen

Det ser ud til, at dette ikke er muligt.

En løsning ville være at bruge en trigger:

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;
/

Den ignorerer i øvrigt ikke fuldstændigt ikke-standardkonstruktører og tilsidesætter standardkonstruktøren

CONSTRUCTOR FUNCTION test_t(in_val NUMBER)
RETURN SELF AS RESULT

fører til en undtagelse, når man forsøger at definere tabellen med DEFAULT NEW test_t(1) :




  1. Sådan opretter du tabel postgresql, når du starter med docker compose

  2. MySQL få sidste dato poster fra flere

  3. Er det muligt at genopbygge pg_depend?

  4. Finde alle MySQL Stored Procedure-opkald?