У меня есть представление, генерирующее из двух основных таблиц. Когда я добавляю записи в одну из основных таблиц, представление не обновляется автоматически. Даже я пробовал использовать exec sp_refreshview
, чтобы обновить представления, это не сработало.Как обновляются представления при добавлении записей в базовую таблицу
Как мне обновить этот вид?
Есть ли другой способ? Я использую Microsoft SQL.
Определение View выглядит следующим образом ...
create view hipo_view
as
select
hipo_list.companyName,
hipo_list.hipoName,
hipo_list.uNo,
hipo_list.uCompany,
hipo_list.employeeNo,
employee_info.imageURL
From hipo_list, employee_info
where hipo_list.hipoName = employee_info.employeeName
AND hipo_list.employeeNo = employee_info.employeeNo
Что значит «просмотр не обновляется автоматически»? Представления (если они не материализованы) в основном заменяют код на запрос, в котором они используются. Они всегда должны использовать последнюю версию таблицы. Вы уверены, что совершаете транзакции вокруг операторов 'insert'? –
Если вы копируете/вставляете SQL в Management Studio и запускаете ее самостоятельно, вы видите, чего вы ожидаете? –
И чтобы добавить к тому, что сказал Гордон в SQL Server, версия материализованных представлений (индексированные представления) также не может устаревать - они поддерживаются как часть каждой транзакции против базовой таблицы (таблиц). Отложенных процессов обслуживания нет. –