Мне нужно проверить, существует ли на SQL Server определенный логин, а если нет, то мне нужно добавить его.Проверка наличия существующей регистрации SQL Server
Я нашел следующий код, чтобы фактически добавить логин в базу данных, но я хочу обернуть это в инструкции IF (каким-то образом), чтобы проверить, существует ли вход в систему первым.
CREATE LOGIN [myUsername] WITH PASSWORD=N'myPassword',
DEFAULT_LANGUAGE=[us_english],
CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF
GO
Я понимаю, что мне нужно допросить системную базу данных, но не знаю, с чего начать!
какая версия SQL Server? – pjp
Это важный вопрос, но, как говорится, он пропустил важное различие: пользователь и логин. Потенциальный дубликат, с которым Джон связан, по-видимому, связан с пользователями. Этот вопрос говорит «пользователь» в заголовке, но касается входа в код вопроса и в принятом ответе. Я отредактировал название и вопрос соответственно. – LarsH
Просто добавьте комментарий @LarsH, ** логины ** связаны с экземпляром SQL-сервера, а ** пользователи ** связаны с конкретной базой данных. Пользователи базы данных могут быть созданы из логинов сервера, поэтому они имеют доступ к конкретной базе данных. См. [Эту замечательную статью] (http://www.sqlservercentral.com/articles/Stairway+Series/109975/), и на самом деле весь ряд является частью (Stariway to SQL Server Security) – DaveBoltman