Check If Record Was Inserted Or Updated In Table I have created a trigger that if the length of [name] &lt;= 2 run an update statement.  This trigger fires 98% of the time, which leads me to believe the 2% of the time it does not fire means that the record was Updated() not Inserted() 

This is sample DDL and my trigger, is there an issue with my trigger syntax?  Or should I be looking at a way to determine if the record was updated?

Create Table TwoNumericNames
(
  name varchar(500)
)

Insert Into TwoNumericNames (name) Values
('AA'), ('RR'), ('CC'), ('MM'), ('EE')


CREATE TRIGGER trgUpdateName
ON [TwoNumericNames]
FOR INSERT
AS
Begin

UPDATE [TwoNumericNames]
SET [name] = CASE
                WHEN [name] LIKE '%AA%' THEN 'Alpha Awe'
                WHEN [name] LIKE '%RR%' THEN 'Raw Red'
                WHEN [name] LIKE '%CC%' THEN 'Capt Cree'
                WHEN [name] LIKE '%MM%' THEN 'My More'
                WHEN [name] LIKE '%EE%' THEN 'Ed Ewe'
            END 
WHERE LEN([name]) &lt;= 2

END


EDIT
Perhaps an AfterInsert() trigger would work better.  Is this the way it should be set-up?  

Create Table TwoNumericNames
(
  id int,
  name varchar(500)
)

Insert Into TwoNumericNames (name) Values
(1,'AA'), (2,'RR'), (3,'CC'), (4,'MM'), (5,'EE')

CREATE TRIGGER [dbo].[trgUpdateName] ON [dbo].[TwoNumericNames] 
AFTER INSERT
AS 
BEGIN
  SET NOCOUNT ON;

  -- get the last id value of the record inserted or updated
  DECLARE @id INT
  SELECT @id = [Name]
  FROM INSERTED

  -- Insert statements for trigger here
  UPDATE [dbo].[TwoNumericNames] 
  SET [name] = CASE
                WHEN [name] LIKE '%AA%' THEN 'Alpha Awe'
                WHEN [name] LIKE '%RR%' THEN 'Raw Red'
                WHEN [name] LIKE '%CC%' THEN 'Capt Cree'
                WHEN [name] LIKE '%MM%' THEN 'My More'
                WHEN [name] LIKE '%EE%' THEN 'Ed Ewe'
            END 
  WHERE [id] = @id 

END
As many have commented, you want to isolate your trigger to fire and modify only when necessary.  This means your going to have to filter on just the record that was inserted.  You can do this with the inserted view.  As you will see from the sample code below, I've slightly modified your code to more easily see what's going on and isolate the update statement to only affect the inserted row.

--create the table
create table TwoNumericNames (rowID int IDENTITY, name nvarchar(500))

--insert a row
INSERT TwoNumericNames
VALUES (N'AA')

--note the row
select * from TwoNumericNames;
go

--create trigger
CREATE TRIGGER trgUpdateName
ON TwoNumericNames
FOR INSERT
AS
Begin

    UPDATE T
    SET T.[name] = CASE
                    WHEN I.[name] LIKE '%AA%' THEN 'Alpha Awe'
                    WHEN I.[name] LIKE '%RR%' THEN 'Raw Red'
                    WHEN I.[name] LIKE '%CC%' THEN 'Capt Cree'
                    WHEN I.[name] LIKE '%MM%' THEN 'My More'
                    WHEN I.[name] LIKE '%EE%' THEN 'Ed Ewe'
                    ELSE I.[name]
                END 
    FROM TwoNumericNames T
    JOIN inserted I ON I.rowID = T.rowID

END
go

--insert another row
INSERT TwoNumericNames
VALUES (N'RR')

--note only the one record is updated
select * from TwoNumericNames