sql server - Why is the Logins property null? -


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