• Here is a complete dynamic SQL solution to the problem:

    declare @CustCode int = 1;

    declare @sql nvarchar(4000);

    with cols(col) as (

    select name

    from sys.columns

    where object_id = OBJECT_ID(N'[dbo].[myTable]')

    and name <> 'CustCode'

    ),

    collist(c) as (select ',' + QUOTENAME(col) from cols for xml path('')

    ),

    zeros(z) as (select ',0' from cols for xml path('')

    )

    select @sql = 'insert into mytable (CustCode' +(select c from collist) + ')'

    + 'select ' + str(@CustCode) + (select z from zeros)

    ;

    exec (@sql);

    select * from mytable;