Reputation: 150
I am trying to implement an Insert All When query. I keep getting invalid identifier error and I'm not sure if its my table structure of my discount table causing the error or if I should be including something else in my query.
CUSTOMER TABLE
Name Type
C_ID NUMBER
C_FN VARCHAR2(10)
C_LN VARCHAR2(10)
C_PH VARCHAR2(12)
C_BD DATE
DISCOUNT TABLE
Name Type
C_ID NUMBER
C_LN VARCHAR2(10)
C_FN VARCHAR2(10)
My Query:
INSERT ALL
WHEN C_BD <= TO_DATE('01-JAN-1950','DD-MON-YYYY') THEN
INTO DISCOUNT(C_ID,C_LN,C_FN)
VALUES(C_ID,C_LN,C_FN)
SELECT C_ID,C_LN,FROM CUSTOMER;
C_BD is throwing the error by being an 'invalid identifier'
I want to understand what is causing this problem
Upvotes: 0
Views: 124
Reputation: 1270713
You need to select C_BD
in the SELECT
:
INSERT ALL
WHEN C_BD <= TO_DATE('01-JAN-1950', 'DD-MON-YYYY') THEN
INTO DISCOUNT(C_ID,C_LN,C_FN)
VALUES (C_ID, C_LN, C_FN)
SELECT C_ID, C_LN, C_FN, C_BD
FROM CUSTOMER;
Upvotes: 1