SQL Server Несколько проблем схемы схемы
-
26-09-2019 - |
Вопрос
У меня есть база данных, которая имеет несколько схем и объектов под ними. Я хочу консолидировать объекты в одну схему.
Я попытался
ALTER SCHEMA dbo TRANSFER <custom_schema>.<table_name>
Я получаю «Объект уже существует сообщение». Тем не менее, я не вижу это в студии управления и
SELECT * from dbo.<table_name>
Возвращает «Объект не существует» ошибка.
Похоже, некоторые системные вход в таблицу отсутствуют. Я посмотрел на SysObjects, и у него есть только одна запись. Любые предложения о том, как беспокоить съемки / исправить эту проблему приветствуется.
Примечание: я могу создать синоним
CREATE SYNONYM dbo.<table_name> FOR <custom_schema>.<table_name>
работает отлично
Решение
В соответствии с Эта MSDN страница Ваша проблема может быть вызвана Дублируйте имя первичного ключа. Отказ То есть основное название основного ключа вашего таблицы_Name с первичным именем ключа, уже определенного в какой-то другой таблице в DBO.
Чтобы устранить эту проблему, переименуйте основной ключ для таблицы, которую вы хотите переместить. Используйте имя, которое не отображается в виде основного ключа в схеме назначения.