Изучите STL сначала. Если Вы изучите C++ с Повышением от запуска, то Вам придется нелегко позже в задании, где Повышение не используется (из-за лицензирования причин и т.д.). Знайте стандарт языка сначала и затем разверните его с Повышением позже при необходимости в нем для определенных вещей.
Исходя из вашего вопроса, я думаю, что вас может немного смутить разница между пользователем и логином . A Вход - это учетная запись на SQL Server в целом, то есть тот, кто может войти на сервер и у кого есть пароль. Пользователь - это логин с доступом к конкретной базе данных.
Создание логина простое и (очевидно) должно быть выполнено до создания ] Учетная запись пользователя для входа в конкретную базу данных:
CREATE LOGIN NewAdminName WITH PASSWORD = 'ABCD'
GO
Вот как вы создаете пользователя с привилегиями db_owner, используя только что объявленный вход :
Use YourDatabase;
GO
IF NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = N'NewAdminName')
BEGIN
CREATE USER [NewAdminName] FOR LOGIN [NewAdminName]
EXEC sp_addrolemember N'db_owner', N'NewAdminName'
END;
GO
Теперь , Логины немного более гибкие, чем я представлял выше. Например, Учетная запись для входа автоматически создается (в большинстве установок SQL Server) для учетной записи администратора Windows при установке базы данных. В большинстве случаев я просто использую это, когда администрирую базу данных (у нее есть все привилегии).
Однако, если вы собираетесь обращаться к SQL Server из приложения, вам нужно настроить сервер на «Смешанный режим» (как для входа в Windows, так и для входа в SQL) и создать логин, как показано выше. Затем вы «ПРЕДОСТАВЛЯЕТЕ» привилегии для этого входа в систему SQL в зависимости от того, что требуется для вашего приложения. См. здесь для получения дополнительной информации.
ОБНОВЛЕНИЕ: Аарон указывает на использование sp_addsrvrolemember для назначения подготовленной роли вашей учетной записи. Это хорошая идея - быстрее и проще, чем предоставление привилегий вручную. Если вы погуглите, вы увидите множество ссылок. Однако,
Полные права администратора для всего сервера или отдельной базы данных? Я думаю, что другие ответили за базу данных, но за сервер:
USE [master];
GO
CREATE LOGIN MyNewAdminUser
WITH PASSWORD = N'abcd',
CHECK_POLICY = OFF,
CHECK_EXPIRATION = OFF;
GO
EXEC sp_addsrvrolemember
@loginame = N'MyNewAdminUser',
@rolename = N'sysadmin';
Вам может потребоваться не включать параметры CHECK_ в зависимости от того, какую версию SQL Server Express вы используете (это почти всегда полезно для включите эту информацию в свой вопрос).
Вы можете использовать:
CREATE LOGIN <login name> WITH PASSWORD = '<password>' ; GO
Чтобы создать логин (см. здесь для более подробной информации).
Затем вам может потребоваться использовать:
CREATE USER user_name
Чтобы создать пользователя, связанного с логином для конкретной базы данных, вы также хотите предоставить им доступ.
(См. ] здесь для подробностей)
Вы также можете использовать:
GRANT permission [ ,...n ] ON SCHEMA :: schema_name
Для настройки разрешений для схемы, которой вы назначили пользователей.
(Подробнее см. здесь )
Две другие команды, которые могут оказаться полезными: ALTER USER и ALTER LOGIN .