Stai troncando i dati a 8000 byte prima di inserirli. Per creare un valore più lungo di 8000 caratteri devi utilizzare il tipo di dati varchar(max), mentre il tipo di 'a' è solo varchar.
create table test(name varchar(max))
insert into test
values(replicate(CAST('a' AS varchar(MAX)), 100000));
select len(name) from test;