Создание пользователя без связанного имени входа не поддерживается в SQL Server 2008 R2 - PullRequest
1 голос
/ 22 сентября 2011

При создании сценариев базы данных SQL Server 2000 в SQL Server версии SQL Server 2000 с SQL Server Management Studio 2008 R2 (10.50.1617.0) я получаю сообщение об ошибке:

Создание пользователя без связанного имени входа не поддерживается в SQL Server 2008 R2.

С полной трассировкой стека:

Microsoft.SqlServer.Management.Smo.SmoException: Creating a user without an associated login is not supported in SQL Server 2008 R2.;   
at Microsoft.SqlServer.Management.SqlScriptPublish.GeneratePublishPage.worker_DoWork(Object sender, DoWorkEventArgs e) at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)  
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

Какой хороший способ решить эту проблему.

Я рассмотрел:

  • создание логина (и навлечь на себя гнев высоко над вещью)
  • удаляет пользователя (и навлекает на себя гнев сверху)
  • выберите некоторые вместо всех объектов для сценария и не создавайте сценарий для пользователя, оскорбляющего SQL Server 2008 R2

Но я позволю людям на ТАК публиковать ответы, получать ответы с поправками и принимать ответ, который наилучшим образом решает проблему.

Ответы [ 2 ]

1 голос
/ 22 сентября 2011

в соответствии с инструкциями. Только не создавайте сценарии для пользователей базы данных, которые не имеют связанных логинов. Это можно сделать в мастере Задачи> Создать сценарии (указывая SSMS 2008 или более поздней версии на экземпляр 2000), выбрав для выбора конкретные объекты базы данных и сняв флажки с любых проблемных пользователей:

enter image description here

0 голосов
/ 22 сентября 2011

Я подозреваю, что в вашей базе данных SQL Server 2000 есть псевдонимы пользователей: они требовались в SQL Server 6.5 в некоторых случаях, потому что это, чёрт побери,

Обратите внимание, что MSDN говорит:

sp_addalias предоставляется для обратной совместимости. Microsoft® SQL Server ™ версии 7.0 предоставляет роли и возможность предоставлять разрешения ролям в качестве альтернативы использованию псевдонимов.

Запустите sp_helpuser в окне SQL Server 2000, просмотрите выходные данные и удалите их

...