Първият ви проблем е, че никога не трябва да обмисляте преминаването през набор от записи като първи избор. Почти винаги е грешен избор, както е тук. Следващият ви проблем е, че тригерите обработват целия набор от записи не един по един и от вашето описание се обзалагам, че сте го написали, приемайки, че ще обработва един запис наведнъж. Имате нужда от процес, базиран на набор.
Вероятно имате нужда от нещо подобно във вашия тригер, който ще вмъкне всички държави във вмъкнати, които все още не са в таблицата с държави (това предполага, че country_Id е колона с целочислена идентичност):
Insert country (country_name)
select country_name
from inserted i
where not exists
(select * from country c
where c.country_name = i.country_name)
Можете също така да използвате съхранена процедура вместо тригер, за да вмъкнете в реалните таблици от етапната таблица.