1

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

4

0 回答 0