Как сгенерировать имя индекса при написании скриптов с использованием SMO - PullRequest
1 голос
/ 18 ноября 2011

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

Когда я смотрю на сгенерированный скрипт, он нефактически предоставляют имя ключа, и поэтому я предполагаю, что SQL Server просто случайным образом назначает его.

Кто-нибудь знает, возможно ли заставить SMO включить имя первичного ключа в сценарий?

Если нет, то я полагаю, что я перестану использовать SMO для ключей, прочитаю их вручную и создам сценарий для ключей самостоятельно.

1 Ответ

0 голосов
/ 18 ноября 2011

По какой-то причине SMO рассматривает индексы и ограничения как синонимы - вы должны иметь возможность получить имя PK, проверив коллекцию table.indexes для name индекса с помощью IndexKeyType из DriPrimaryKey .

...