Добавление пользователя и пользователя на SQL Server без использования SMO

в продукте нашей компании мы привязываем базу данных к SQL Server, и нам нужно добавить учетные данные для некоторых учетных записей в каталог.

В настоящее время мы используем SMO для этого, но это дает нам проблемы (x86 против x64, SQL Server 2005 и 2008)

Есть ли способ добавить логин (на сервер) и пользователя (в каталог) с помощью SQL?

Это текущий код для добавления логина:

connection = new ServerConnection(new SqlConnection(this.connectionString)); Server server = new Server(connection); //Drop existing login (if exist) Login login = server.Logins[AccountName]; if (login != null) login.Drop(); //Create new login login = new Login(server, AccountName); login.LoginType = LoginType.WindowsUser; login.Create(); DatabaseMapping mapping = new DatabaseMapping(login.Name, connection.DatabaseName, login.Name); 

и добавить пользователя:

 connection = new ServerConnection(new SqlConnection(this.connectionString)); Server server = new Server(connection); Microsoft.SqlServer.Management.Smo.Database database = server.Databases[CatalogName]; User user = server.Databases[CatalogName].Users[LoginName]; if (user != null) user.Drop(); user = new User(database, LoginName); user.Login = LoginName; user.Create(); user.AddToRole("db_owner"); 

Я хочу выполнить эти операции с помощью SQL. Есть идеи?

СОЗДАТЬ ВХОД И СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ

Сначала проверить вход в систему :

 IF SUSER_ID('Login') IS NULL 

Сначала проверить тест для пользователя

 IF DATABASE_PRINCIPAL_ID('User') IS NULL 

Чтобы добавить пользователя к роли :

 EXEC sp_addrolemember 'Role', 'User' 

FYI, SMO реплицирует функциональность SQL. Я не думаю, что есть что-то, что можно сделать только с SMO (есть, конечно, много всего SQL).

  • с помощью SMO .net для резервного копирования и восстановления через DeviceType.Pipe
  • SQL Server 2012: получение списка доступных резервных копий
  • Используя C # и SMO, как мне добавить резервное устройство на SQL Server?
  • Изменить право собственности на MSSQL через Powershell
  • Как убить все подключения к базе данных SQL Server с помощью C # и SMO?
  • Как установить владельца существующей базы данных SQL Server
  • Ошибка таймаута в командлете Backup-SQLDatabase
  • Данные сценария сервера Sql: SMO.Scripter не работает при выводе в файл
  • Ссылка Microsoft.SqlServer.Smo.dll
  • Как мне отображать текущие запущенные хранимые процедуры с SMO?
  • Резервное копирование базы данных с помощью SMO
  • Давайте будем гением компьютера.