Non credo che tu abbia bisogno di qualcosa di così complicato come quello. Se hai creato una vista come
CREATE VIEW MYVIEW AS
SELECT COLUMN1,
COLUMN2,
DISCRIMINATOR_COLUMN
FROM MYTABLE
WHERE DISCRIMINATOR_COLUMN = 1;
potresti quindi inserire in questa vista così...
INSERT INTO MYVIEW (COLUMN1,
COLUMN2,
DISCRIMINATOR_COLUMN)
VALUES (1, 2, 3)
e la vista dovrebbe aggiornarsi correttamente se tutte le colonne della tabella che non sono presenti nella vista hanno valori predefiniti adeguati. Nota che il nuovo valore in DISCRIMINATOR_COLUMN
non deve essere il valore selezionato nella vista, anche se naturalmente non apparirà nella vista alla successiva selezione a meno che non lo sia.