i'm trying add windows user sql server. works fine. however, if user there, don't want error. if it's there, that's fine. thought check before creating it:
$accountname = $args[0] $computername = $args[1] [system.reflection.assembly]::loadwithpartialname('microsoft.sqlserver.smo') | out-null $sqlsrv = new-object 'microsoft.sqlserver.management.smo.server' ($computername) $sqlsrv.refresh() # tried different things here, refresh, initialize... $login = $sqlsvr.logins[$accountname] # here .logins null if ($login -eq $null) { $login = new-object 'microsoft.sqlserver.management.smo.login' ($sqlsrv, $accountname) $login.name = $accountname $login.logintype = 'windowsuser' $login.passwordpolicyenforced = $false $login.create() }
i don't know why logins
property of sql server class null. can see existing logins in sql management studio.
can tell me how check if login exists before creating it? roles , databases, server's properties seem filled.
i'm using sql server express version 11.0.5058.0 (i think that's 2012) , powershell version 5.0.10586.117.
change this $sqlsvr.logins $sqlsrv.logins
$sqlsvr.logins $sqlsrv.logins
Comments
Post a Comment