Msg 1937, Level 16, State 1, Line 1
Cannot create index on view 'FTS_test.dbo.AdvertsView_En' because it references another view 'dbo.AdvertsView'. Consider expanding referenced view's definition by hand in indexed view definition.
Вот такое сообщение когда создаю вью, почему?
USE FTS_test
GO
IF EXISTS(SELECT * FROM sysobjects WHERE (xtype = 'V') AND [Name] = 'AdvertsView')
DROP VIEW AdvertsView
GO
CREATE VIEW [dbo].[AdvertsView] WITH SCHEMABINDING
AS
SELECT AdvertId, [Description] as TextData FROM [dbo].[Adverts]
GO
DECLARE @languageName nvarchar(50);
DECLARE @languageShortName nvarchar(3);
SET @languageName = 'English';
SET @languageShortName = 'En';
IF EXISTS(SELECT * FROM sysobjects WHERE (xtype = 'V') and [Name] = 'AdvertsView_' + @languageShortName)
execute('DROP VIEW AdvertsView_' + @languageShortName);
execute('CREATE VIEW [dbo].[AdvertsView_' + @languageShortName + '] WITH SCHEMABINDING AS SELECT AdvertId, TextData FROM [dbo].[AdvertsView]');
execute('CREATE UNIQUE CLUSTERED INDEX i_Adverts_' + @languageShortName + ' ON AdvertsView_' + @languageShortName + ' (AdvertId)');
execute('DROP FULLTEXT CATALOG Adverts_' + @languageShortName + '_Cat');
execute('CREATE FULLTEXT CATALOG Adverts_' + @languageShortName + '_Cat');
execute('CREATE FULLTEXT INDEX ON AdvertsView_' + @languageShortName + '(
[TextData]
Language ' + @languageName + '
)
KEY INDEX i_Adverts_En ON Adverts_En_Cat
WITH CHANGE_TRACKING AUTO');
GO