#c# #sql-server #networking
#c# #sql-сервер #сеть
Вопрос:
У меня есть 2 базы данных. Первый создается SQL Server Express, а второй создается программно.
Я могу легко работать с ними, но проблема возникает, когда другой пользователь хочет войти в них. Я попытался добавить пользователя в свои базы данных с помощью Create user[DomainUser] for login ...
команды.
Эта команда сработала для первой базы данных, но для второй я получаю эту ошибку:
«Участник сервера ‘Domain User’ не может получить доступ к базе данных ‘DBName’ в текущем контексте безопасности».
или эта ошибка:
ошибка входа для этого пользователя
Обратите внимание, что моя программа используется в сети.
пожалуйста, помогите мне
Комментарии:
1. Пожалуйста, более конкретно о вашей второй базе данных и о том, как вы пытаетесь получить к ним доступ. Используете ли вы веб-приложение?
2. Покажите нам, как вы программно создаете свою вторую базу данных!
3. Чтобы использовать
CREATE USER..... FOR LOGIN...
, вам сначала нужно было бы создать логин , используяCREATE LOGIN ......
4. Нет, я использую приложение Windows. я использую этот код для создания моей 2-й базы данных: «СОЗДАТЬ БАЗУ ДАННЫХ MyDatabase На ПЕРВИЧНОЙ » «(ИМЯ = MyDatabase_Data, » «ИМЯ ФАЙЛА = ‘myPath \MyDatabaseData.mdf’, » «РАЗМЕР = 2 МБ, РОСТ ФАЙЛА = 10%) » «ВОЙТИ В СИСТЕМУ (ИМЯ = MyDatabase_Log, » «ИМЯ ФАЙЛА = ‘myPath \MyDatabaseLog.ldf’, » «РАЗМЕР = 1 МБ » «ПРИРОСТ ФАЙЛА = 10%)». Я также использовал Create Login, но получаю «Основной сервер… » ошибка
Ответ №1:
Просто предположение: если пользователь и сервер находятся в домене, в сети могут возникнуть какие-либо проблемы. Вы должны добавить логин к экземпляру и назначить его базе данных вместе с ролями для пользователя.