我有一個表,它有一個字段。當我在表中插入空值(如''或null)時,它應該轉換爲'DUMMY-VALUE'。在Oracle中,如何在插入表時處理NULL值
--Have one table;
CREATE TABLE TEST (FIELD1 VARCHAR2(50));
--When I insert ''
INSERT INTO TEST(FIELD1) VALUES('');
SELECT * FROM TEST
--Expected Result 'DUMMY-VALUE' but not NULL
我可以在INSERT
聲明適用NVL('','DUMMY-VALUE')
但我不允許只改變CREATE
聲明。 現在我用TRIGGER
來處理這個問題,但是想知道在11g中是否有其他選擇,但是我知道oracle 12c的DEFAULT ON NULL
。
如何將默認值設爲「DUMMY-VALUE」?如果值爲NULL或空則插入沒有該字段? – TechDo
不,默認值將不起作用,因爲NULL或''將覆蓋默認值。但是,只有在插入過程中未提及列名時,您的建議纔有效。 – touchchandra