sql server - Update data during insert in a Trigger and then insert -


i have situation where, have 10 columns in table. inserting 5 columns program , 5 columns, want create trigger. possible? , if yes, how do that?

col1 col2 col3 col4 col5 col6 col7 col8 col9 col10

create trigger fill_trigger    on  db     after insert  begin     -- set nocount on added prevent result sets     -- interfering select statements.     set nocount on;      -- insert statements trigger here     declare @col6 int     declare @col7 int -- , on.      set @col6 = (select col1 inserted) * (select col2 inserted)    set @col7 = (select col3 inserted) * (select col4 inserted)     --is possible following?   update inserted set col6 = @col6   update inserted set col7 = @col7 end go 

you shouldn't use locsal variables in trigger because makes "single row only"

also, assume have primary key called keycolumn. , table called "db".

create trigger fill_trigger    on db     after insert  begin    set nocount on;     update db    set        col6 = i.col1 * col2,        col7 = i.col3 * col4           db        join        inserted on db.keycolumn = i.keycolumn; end go 

however, columns based on other columns, use computed columns , not have trigger

create table mytable (     keycolumn ...,     col1 ...,     col2 ...,     col3 ...,     col4 ...,     col5 ...,      col6 col1 * col2,     col7 col3 * col4,     col8 ...      ); 

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -