小编Tom*_*all的帖子

使用Powershell创建SQL Server用户

我编写了一个powershell脚本,该脚本创建一个新的sql server数据库并登录,然后将数据库所有者设置为新创建的用户。这是成功的。但是,尝试在同一脚本中登录时,出现登录失败异常。如果使用SQL Server Management Studio,则登录有效。

这是脚本:

$server = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database($server, 'TestDB')
$db.Create()

$login = new-object Microsoft.SqlServer.Management.Smo.Login("(local)", 'TestUser')
$login.LoginType = 'SqlLogin'
$login.PasswordPolicyEnforced = $false
$login.PasswordExpirationEnabled = $false
$login.Create('Password1')

$server = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $server.Databases.Item('TestDB')
$db.SetOwner('TestUser', $TRUE)
$db.Alter()
Invoke-Sqlcmd -ServerInstance localhost -Database 'TestDB' -Username 'TestUser' -Password 'Password1' -Query "SELECT * FROM sysusers"
Run Code Online (Sandbox Code Playgroud)

我尝试添加Start-Sleep(最多5分钟)无济于事,并且我尝试了Restart-Service mssqlserver -Force,也无济于事。

有任何想法吗?

sql sql-server powershell

5
推荐指数
1
解决办法
8641
查看次数

标签 统计

powershell ×1

sql ×1

sql-server ×1