vista indexada no SQL Server 2005 erro

votos
3

Eu tentei adicionar um índice em uma exibição no SQL Server 2005 uma Eu tenho esse erro: Não é possível criar índice na vista 'AllAssignmentNotes' porque a vista não é esquema obrigado.

Eu não quero colocar muita informação aqui como pode ser sobrecarga. Basta saber se alguém poderia me dar alguma ajuda.

Eu fui para a url do erro me deu e me levou a lugar nenhum. O erro total é abaixo.

Eu sei que você não pode fazer dar uma resposta real porque eu não vos dei todas as informações, as minhas desculpas.

TITLE: Microsoft SQL Server Management Studio
------------------------------

Criar falhou por Index 'IX_AssignmentId'. (Microsoft.SqlServer.Smo)

Para obter ajuda, clique em: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.4035.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Create+Index&LinkId=20476

------------------------------
INFORMAÇÃO ADICIONAL:

Ocorreu uma exceção ao executar uma instrução Transact-SQL ou lote. (Microsoft.SQLServer.ConnectionInfo)

------------------------------

Não é possível criar índice em 'AllAssignmentNotes' vista porque a vista não é esquema ligado. (Microsoft SQL Server, erro: 1939)

Para obter ajuda, clique em: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.4035&EvtSrc=MSSQLServer&EvtID=1939&LinkId=20476

------------------------------
BUTTONS:

Está bem
------------------------------
Publicado 19/05/2009 em 20:46
fonte usuário
Em outras línguas...                            


4 respostas

votos
5

Assim como o erro diz, você não pode ter um índice em uma visão que não é esquema ligado. Para schemabind o uso vista

create view with schemabinding.

todas as tabelas referenciadas int a visão deve ser totalmente quallified com o schemaname, ou seja dbo.table, não apenas mesa

Respondeu 19/05/2009 em 20:48
fonte usuário

votos
2

Este artigo explica obrigatório em detalhe esquema.

http://www.mssqltips.com/tip.asp?tip=1610

Respondeu 19/05/2009 em 20:49
fonte usuário

votos
1

Lidar com exibições indexadas era grande dor desde que foram introduzidos. Regras para realmente fazer uma exibição que suporta indexação são muito rigorosos e mensagens de erro são inúteis.

Você deve verificar BOL http://msdn.microsoft.com/en-us/library/ms191432(sql.90).aspx

Respondeu 19/05/2009 em 22:40
fonte usuário

votos
1

Supondo que você criou sua opinião com SCHEMABINDING então é possível, as suas configurações de conexão destas opções SET deve ser definido como ON quando a instrução CREATE INDEX é executado:

ANSI_NULLS 
ANSI_PADDING 
ANSI_WARNINGS 
ARITHABORT 
CONCAT_NULL_YIELDS_NULL 
QUOTED_IDENTIFIERS 

A opção NUMERIC_ROUNDABORT deve ser definido como OFF.

Respondeu 19/05/2009 em 20:50
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more