Конечно, транзакции могут быть проблемой из-за грязного чтения, я не знаю, является ли это проблемой в этом случае ...

я есть запрос, который содержит серию из 21UNIONsНапример:

CREATE VIEW dbo.USGovCurrencyOnHandBreakdown AS

   SELECT ... FROM a
   UNION ALL
   SELECT ... FROM b
   UNION ALL
   SELECT ... FROM c
   UNION ALL
   SELECT ... FROM d
   ...
   UNION ALL
   SELECT ... FROM u

Запрос работает нормально, когда выполняется один. Но когда запрос выполняется через содержащее представление:

SELECT * FROM USGovCurrencyOnHandBreakdown 

Msg 4414, Level 16, State 1, Line 1
Could not allocate ancillary table for view or function resolution. The maximum number of tables in a query (260) was exceeded.

я пытался разделить мойUSGovFedExpentiures смотреть на более мелкие куски:

CREATE VIEW dbo.USGovCurrencyOnHandBreakdown AS

   SELECT x FROM TreasuryAuditResults
   UNION ALL
   SELECT x FROM USGovCurrencyOnHandBreakdown_Additions
   UNION ALL
   SELECT x FROM USGovCurrencyOnHandBreakdown_Subtractions

С участиемUSGovCurrencyOnHandBreakdown_Additions а такжеUSGovCurrencyOnHandBreakdown_Subtractions каждый из которых содержит примерно половину запросов:

CREATE VIEW USGovCurrencyOnHandBreakdown_Additions AS
   SELECT ... FROM b
   UNION ALL
   SELECT ... FROM c
   ...
   SELECT ... FROM k

CREATE VIEW USGovCurrencyOnHandBreakdown_Subtractions AS
   SELECT ... FROM l
   UNION ALL
   SELECT ... FROM m
   ...
   SELECT ... FROM u

Но выбирая изродитель"просмотр по-прежнему не удается:

SELECT * FROM USGovCurrencyOnHandBreakdown

Msg 4414, Level 16, State 1, Line 1
Could not allocate ancillary table for view or function resolution. The maximum number of tables in a query (260) was exceeded.

Как я могу обойти ограничение таблицы 256?

Смотрите такжеИСПРАВЛЕНИЕ: запрос Transact-SQL, использующий представления, может неожиданно завершиться с ошибкой в ​​SQL Server 2000 с пакетом обновления 3 (SP3)MSDN: спецификации максимальной емкости для SQL Server

Ответы на вопрос(2)

Ваш ответ на вопрос