无法使用变量扩展 Azure SQL 数据库

Unable to scale Azure SQL database using a variable

我正在尝试执行以下操作:

  1. 使用以下 PS 脚本捕获 Azure sql 数据库的原始版本和 RequestedServiceObjectiveName:
$OriginalScale= Get-AzSqlDatabase `
                    -ResourceGroupName "POC_Scale" `
                    -ServerName "scaledb" `
                    -DatabaseName "scaleME"

2.Scale 使用以下方法将此数据库升级到特定版本和层:

Set-AzSqlDatabase `
                    -ResourceGroupName "POC_Scale" `
                    -ServerName "scaledb" `
                    -DatabaseName "scaleME" `
            -Edition "Standard" `
            -RequestedServiceObjectiveName "S3" `

3.After 部署,将其缩放回我在第 2 步之前捕获的原始规模,使用:

Set-AzSqlDatabase `
                    -ResourceGroupName "POC_Scale" `
                    -ServerName "scaledb" `
                    -DatabaseName "scaleME" `
            -Edition "$OriginalScale.Edition" `
            -RequestedServiceObjectiveName "$OriginalScale.RequestedServiceObjectiveName" `

我收到以下错误:

我试过以下方法:

  1. 尝试在传入的 -Edition 和 -RequestedServiceObjectName 周围使用单引号,但出现相同的错误。

  2. 检查 $OriginalScale.Edition 确实 return “标准”。还检查了文档,发现 .Edition 实际上是一个理论上应该有效的字符串。

有人可以指导我这里做错了什么吗?看起来很简单,但不确定我做错了什么。

引号有问题。要么不使用引号,要么像这样:

-Edition "$($OriginalScale.Edition)"

您当前尝试的语法是忽略 .Edition 并且只输出 PSObject 名称。