Почему вы хотите обновить одну таблицу информацией, которая легко доступна в другой? Похоже, вы просто гарантируете, что вам придется запускать этот запрос каждый раз, когда вы выполняете обновление, вставку или удаление таблицы camsnav. Иначе как вы собираетесь их синхронизировать?
Кроме того, если вы не можете гарантировать, что подзапрос вернет ровно одну строку, возможно, безопаснее использовать специфичный для SQL Server и собственный формат обновления:
UPDATE f SET nav = n.nav
FROM camsfolio AS f
INNER JOIN camsnav AS n
ON f.schcode = n.schcode;