我试图从SQL服务器检索一些信息并将其分配给变量:
$query = "select top 1 * from [DB1].[dbo].[table1] where servername='ABC-CDE-SVR1'"
$svrParams = Invoke-Sqlcmd -Query $query -ServerInstance "ADMNSVR"
在这种情况下$svrParams
是带有一堆参数的 System.Object :
:\> $svrParams
ServerCode : 6
ServerName : ABC-CDE-SVR1
Environment_Abbr : SVR1
ServerWithInstanceFlag : False
EnvironmentTypeCode : 3
ActiveFlag : True
PrimaryDriveLetter : Z:
我试图通过分配这样的新变量逐个拉出它们:
$backupDrive = $svrParams.PrimaryDriveLetter | Out-String
问题是该变量仍然出现 System.Object 类型。因此,当我尝试将其与另一个字符串连接时,我得到2行结果:
:\> $DBbackupLocation = "$backupDrive" + "\Backup\Data\"
:\> $DBbackupLocation
Z:
\Backup\Data\
如果有办法从对象中提取纯文本,请告诉我。在变量之前尝试[string],结果相同。