TARGET_TABLE在with 下面的语句中插入值时INSERT..SELECT,列的默认值lastupdate似乎优先于SELECT语句产生的值。
即使在SOURCE_TABLE.
例子:
SOURCE_TABLE包含lastupdate = 16.08.12 15:41:44
执行语句后,lastupdateinTARGET_TABLE被设置为SYSDATE,例如16.08.12 15:49:14:
INSERT INTO TARGET_TABLE (A, B, C, D, LASTUPDATE, F)
SELECT A, B, C, D, LASTUPDATE, F
FROM SOURCE_TABLE
WHERE B = 'some_value';
CREATE TABLE TARGET_TABLE
(
ID NUMBER NOT NULL,
A VARCHAR2(255 CHAR) NOT NULL,
B VARCHAR2(255 CHAR) NOT NULL,
C CLOB NOT NULL,
D VARCHAR2(255 CHAR),
LASTUPDATE DATE DEFAULT SYSDATE,
E DATE DEFAULT SYSDATE
)
Oracle 版本:Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
我希望将值从复制SOURCE_TABLE到TARGET_TABLE而不是设置为SYSDATE。
我在这里想念什么?谢谢你。