Chave preservada significa que 1 valor da chave vai para 1 tabela. Dar exemplos de contadores pode ajudá-lo a entender melhor esse conceito.
Exemplo 1:
Sua visão contém agregação. Suponha que você tenha a seguinte estrutura de exibição.
GroupID, AverageSalary
1 , 10000
2, 12000
3, 14000
Neste exemplo: seus valores vêm de mais de uma linha. Se você tentar atualizar o AverageSalary nessa exibição, o banco de dados não poderá encontrar WHICH linhas a serem atualizadas.
Exemplo2:
Sua visualização mostra valores de mais de uma tabela. Sua visualização mostra valores da tabela PERSON e PERSON_CONTACT_DETAILS (ID, PersonID, ContactType, ContactValue).
Linhas de exemplo:
1,1,email,ddd@example.com
1,1,phone,898-98-99
Você se junta a esta tabela 2 e mostra mais informações favoráveis aos negócios.
PersonId, Nome, Sobrenome, Telefone1, Email1
Aqui você deseja atualizar o Phone1 e o Email1. Mas o seu personID mapeia para duas linhas diferentes, pode haver mais linhas, neste exemplo. Nesta visão, novamente, o banco de dados não tem como encontrar as linhas que atualizar.
Nota: Se você restringir o modo de exibição sql e deixar claro a localização de quais linhas atualizar, isso pode funcionar.
Este dois exemplos são os primeiros exemplos que me vêm à mente. Eles podem ser aumentados. Mas o conceito é claro. O banco de dados precisa mapear 1 valor-chave para 1 tabela. Por exemplo, você possui as tabelas PERSON, PERSON_DETAILS. Aqui, a visualização e atualização funcionará, pois é um para um.