Ответ на загадку замыкающих пробелов можно найти в ANSI_PADDING
Для получения дополнительной информации посетите: SET ANSI_PADDING (Transact-SQL)
По умолчанию ANSI_PADDIN ON. Это повлияет на столбец только при его создании, но не на существующие столбцы.
Перед запуском запроса на обновление проверьте свои данные. Это могло быть скомпрометировано.
Выполните следующий запрос, чтобы найти скомпрометированные строки:
SELECT *
FROM tablename
WHERE LEN(RTRIM([filename])) > 46
-- The column size varchar(50) minus 4 chars
-- for the needed file extension '.jpg' is 46.
Эти строки либо потеряли несколько символов, либо недостаточно места для добавления расширения файла.