i am trying to insert new field values into Table_y_name for all the T_NUM's in table Table_x_name and i am getting a unique constraint error
The V_ID,C_ID,T_NUM and field_name is the primary key for Table_x_name.
can u please suggest y ?
the script i am using is ....
Declare
begin
FOR hint IN (select V_ID,C_ID,T_NUM from Table_x_name)
LOOP
INSERT INTO Table_y_name ( V_ID,
C_ID,
T_NUM,
SECTION_NAME,
DISPLAY_ORDER,
FIELD_NAME,
SYSTEM_FIELD_FLAG,
REQUIRED_FLAG,
EDITABLE_FLAG,
SHOW_IN_PAYMENT_FORM_FLAG,
SHOW_IN_RECEIPT_FLAG,
SHOW_IN_CUSTOMER_EMAIL_FLAG,
SHOW_IN_MERCHANT_EMAIL_FLAG,
SHOW_IN_VT_FLAG,
FIELD_SIZE,
DISPLAY_NAME,
FORWARD_ON_APPRVL_FLAG,
FORWARD_ON_DECL_FLAG,
FIELD_TYPE,
DD_RADIO_VALUES,
FIELD_SIZE_MIN)
SELECT hint.V_ID,
hint.C_ID,
hint.T_NUMBER,
'xyzz' SECTION_NAME,
(SELECT MAX(DISPLAY_ORDER)+1 FROM Table_y_name_FIELD WHERE V_ID=Table_y_name.V_ID AND COMPANY_ID=Table_y_name.C_ID AND TERMINAL_NUMBER=Table_y_name.T_NUM AND section_name='xyzz') DISPLAY_ORDER,
'new field' AS FIELD_NAME,
'Y' AS SYSTEM_FIELD_FLAG,
'N' AS REQUIRED_FLAG,
'Y' AS EDITABLE_FLAG,
'Y' AS SHOW_IN_PAYMENT_FORM_FLAG,
'N' AS SHOW_IN_RECEIPT_FLAG,
'N' AS SHOW_IN_CUSTOMER_EMAIL_FLAG,
'N' AS SHOW_IN_MERCHANT_EMAIL_FLAG,
'Y' AS SHOW_IN_VT_FLAG,
1 AS FIELD_SIZE,
'Field' AS DISPLAY_NAME,
'N' AS FORWARD_ON_APPRVL_FLAG,
'N' AS FORWARD_ON_DECL_FLAG,
'DDLIST' AS FIELD_TYPE,
'Y=Yes:N=No' AS DD_RADIO_VALUES,
1 AS FIELD_SIZE_MIN
from
(select 1 region_id from dual union select 2 from dual) region;
end loop;
end;
The V_ID,C_ID,T_NUM and field_name is the primary key for Table_x_name.
can u please suggest y ?
the script i am using is ....
Declare
begin
FOR hint IN (select V_ID,C_ID,T_NUM from Table_x_name)
LOOP
INSERT INTO Table_y_name ( V_ID,
C_ID,
T_NUM,
SECTION_NAME,
DISPLAY_ORDER,
FIELD_NAME,
SYSTEM_FIELD_FLAG,
REQUIRED_FLAG,
EDITABLE_FLAG,
SHOW_IN_PAYMENT_FORM_FLAG,
SHOW_IN_RECEIPT_FLAG,
SHOW_IN_CUSTOMER_EMAIL_FLAG,
SHOW_IN_MERCHANT_EMAIL_FLAG,
SHOW_IN_VT_FLAG,
FIELD_SIZE,
DISPLAY_NAME,
FORWARD_ON_APPRVL_FLAG,
FORWARD_ON_DECL_FLAG,
FIELD_TYPE,
DD_RADIO_VALUES,
FIELD_SIZE_MIN)
SELECT hint.V_ID,
hint.C_ID,
hint.T_NUMBER,
'xyzz' SECTION_NAME,
(SELECT MAX(DISPLAY_ORDER)+1 FROM Table_y_name_FIELD WHERE V_ID=Table_y_name.V_ID AND COMPANY_ID=Table_y_name.C_ID AND TERMINAL_NUMBER=Table_y_name.T_NUM AND section_name='xyzz') DISPLAY_ORDER,
'new field' AS FIELD_NAME,
'Y' AS SYSTEM_FIELD_FLAG,
'N' AS REQUIRED_FLAG,
'Y' AS EDITABLE_FLAG,
'Y' AS SHOW_IN_PAYMENT_FORM_FLAG,
'N' AS SHOW_IN_RECEIPT_FLAG,
'N' AS SHOW_IN_CUSTOMER_EMAIL_FLAG,
'N' AS SHOW_IN_MERCHANT_EMAIL_FLAG,
'Y' AS SHOW_IN_VT_FLAG,
1 AS FIELD_SIZE,
'Field' AS DISPLAY_NAME,
'N' AS FORWARD_ON_APPRVL_FLAG,
'N' AS FORWARD_ON_DECL_FLAG,
'DDLIST' AS FIELD_TYPE,
'Y=Yes:N=No' AS DD_RADIO_VALUES,
1 AS FIELD_SIZE_MIN
from
(select 1 region_id from dual union select 2 from dual) region;
end loop;
end;