Код не работает с кластерным индексом - PullRequest
0 голосов
/ 04 октября 2009

У меня есть приложение, в котором инструкция говорит, что оно не работает с кластерным индексом с более чем одним полем. Не смог устоять перед тестированием, и это правда. Приложение застревает в бесконечном количестве ошибок, если я добавляю кластерный индекс с 2 полями.

Я думал, что индекс является чем-то внутренним для базы данных, что не влияет на приложение. Как вы пишете SQL, который не работает в присутствии кластерного индекса?

Приложение использует SQL Server 2005

Ответы [ 2 ]

1 голос
/ 04 октября 2009

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

Вероятно, не стоит углубляться в дальнейшие исследования, поскольку в любом приложении это задокументированный предел, но если вам необходимо выполнить обратный инжиниринг, вы можете использовать профилировщик, чтобы увидеть, что происходит в этом цикле.

1 голос
/ 04 октября 2009

Был ли это кластерный индекс или первичный ключ, который вы сделали составным? Иногда они рассматриваются как синонимичные в SQL Server, даже если одно является отношением Домена (первичный ключ), а другое (кластеризованный индекс) - деталь реализации.

Некоторые ORM плохо работают с составными первичными ключами.

Включена ли в базе данных регулярная программа обслуживания? Вы вручную запускали DBCC CHECKDB ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...