title: sql server simple insert trigger issue
body: <p>I'm new to triggers . I have table like this</p>
  
  <pre><code>CREATE TABLE [dbo].[Positions](
      [Id] [int] IDENTITY(1,1) NOT NULL,
      [ParentId] [int] NOT NULL,
      [Path] [varchar](100) NULL,
      [Title] [nvarchar](200) NOT NULL,
      [Description] [nvarchar](1000) NULL
  )
  </code></pre>
  
  <p>Which I'm trying to write a trigger in which  when ever a record inserted  , the trigger update the path .</p>
  
  <p><code>The Path = the path of parent + / + Id of new inserted record</code> . </p>
  
  <p>I have a trigger like this , But it all the time set the <code>1</code> in <code>Path</code> column which is not correct .</p>
  
  <pre><code>ALTER trigger [dbo].[ti_updatepath]
  on [dbo].[Positions]
  after insert 
  as
  begin
  
  declare @NewId int =  (select Id from Inserted)
  declare @NewParentId int = (select parentId  from Inserted)
  
  declare @ParentPath varchar ;
  set @ParentPath = (select path from positions where Id = @NewParentId)
  
  declare @Path varchar;
  set @path = @ParentPath + '/'+ convert(varchar ,@NewId)
  update Positions set Path = @path where Id= @NewId
  end
  </code></pre>
  
  <p>for more info , my table populated like this : </p>
  
  <pre><code>Id          ParentId    Path
  1           0           1/          
  2           1           1/2         
  3           2           1/2/3       
  5           2           1/2/5       
  6           4           1/2/6       
  7           2           1/2/7       
  8           2           1/2/8       
  9           2           1/2/9       
  10          2           12/10       
  13          2           1/2/13      
  14          2           1/2/14      
  15          2           1/2/15      
  16          2           1/2/16      
  17          8           1/2/8/17    
  18          8           1/2/8/18    
  19          8           1/2/8/19    
  20          17          1/2/8/17/20 
  </code></pre>