我正在尝试从 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]。