2017-10-18 4 views
0

Ich versuche, eine Tabelle mit Werten aus mehrfach verknüpften Tabellen einzufügen.So fügen Sie eine berechnete Spalte ein

Hier ist mein Code:

INSERT INTO [dbo].[ORD_PURCHASING_GROUP_DTL] 
       ([ORG_ID] 
       ,[ORG_UNIT_ID] 
       ,[PURCHASING_GROUP] 
       ,[MASTER_CUSTOMER_ID] 
       ,[SUB_CUSTOMER_ID] 
       ,[ADDOPER] 
       ,[ADDDATE] 
       ,[MODOPER] 
       ,[MODDATE] 
       ,[CONCURRENCY_ID] 
       ,[EFFECTIVE_BEGIN_DATE] 
       ,[EFFECTIVE_END_DATE] 
       ,[LAST_FIRST_NAME] 
       ,[ACTIVE_FLAG] 
      ) 
    (select 'SIAM', 'SIAM', CONCAT(@conf_name, '-', demo.DEMOGRAPHIC_CODE) 
as PURCHASING_GROUP, demo.master_customer_id, 0, 'SIAM_MTG_PG_SQL' as 
ADDOPER, GETDATE() as ADDDATE, NULL as MODOPER, NULL as MODDATE, 0, 
demo.USER_D1 as EFFECTIVE_BEGIN_DATE, NULL as EFFECT_END_DATE, 
cus_addr.Last_First_Name as LAST_FIRST_NAME , cus_status.ACTIVE_FLAG as 
ACTIVE_FLAG 
    from cus_demographic as demo 
     join CUS_PRIMARY_EMPL_ADDR_MBR_VW cus_addr on 
demo.MASTER_CUSTOMER_ID = cus_addr.MASTER_CUSTOMER_ID 
     join CUS_STATUS_VW cus_status on demo.MASTER_CUSTOMER_ID = 
cus_status.MASTER_CUSTOMER_ID 
     where 
      1 = 1 
     and demographic_code in (
      select RIGHT(pg.PURCHASING_GROUP, LEN(pg.PURCHASING_GROUP)- 
CHARINDEX('-', pg.PURCHASING_GROUP)) 
      FROM [ORD_PURCHASING_GROUP] as pg 
       where pg.PURCHASING_GROUP like concat(@conf_name, '%') 
     ) 
     and demographic_subcode = @conf_name) 

ich den Fehler:

Msg 271, Level 16, State 1, Line 82 
The column "LAST_FIRST_NAME" cannot be modified because it is either a 
computed column or is the result of a UNION operator. 
Msg 271, Level 16, State 1, Line 82 
The column "ACTIVE_FLAG" cannot be modified because it is either a computed 
column or is the result of a UNION operator. 

Ich bin nicht sicher, wie eine "berechnete Spalte" einzufügen. Ich sage einen Beitrag, wo es heißt, ich sollte den Tisch ändern. Aber ich will diese Werte einfügen ...

Hier ist der Link ... How do you add a computed column to a Table?

+3

Die ganze Punkt einer berechneten Spalte ist, dass Sie den Wert nicht in eine 'Einfügung' setzen. –

Antwort

Verwandte Themen