Reputation: 63
In Azure, I want to rename a SQL database with a PowerShell automation runbook with the command:
Set-AzureRmSqlDatabase -ResourceGroupName <ResourceGroupName>
-ServerName <ServerName> -DatabaseName <DatabaseName> -NewName <NewName>
according to the documentation https://learn.microsoft.com/en-us/powershell/module/azurerm.sql/set-azurermsqldatabase?view=azurermps-6.13.0
This command works fine in the Launch Cloud Shell from the top navigation of the Azure portal.
But in a runbook, it does not work with this error:
Set-AzureRmSqlDatabase : A parameter cannot be found that matches parameter name 'NewName'.
It seems that -NewName
is missing in a runbook
Set-AzureRmSqlDatabase `
-DatabaseName <System.String> `
-ResourceGroupName <System.String> `
[-ElasticPoolName <System.String>] `
[-Tags <System.Collections.Generic.Dictionary`2[System.String,System.String]>] `
[-RequestedServiceObjectiveName <System.String>] `
-ServerName <System.String> `
[-Edition <Microsoft.Azure.Commands.Sql.Database.Model.DatabaseEdition>] `
[-MaxSizeBytes <System.Int64>]
Upvotes: 1
Views: 475
Reputation: 1732
I'm expecting that you are running the runbook from an Azure Automation Account.
Depending on when you created the Azure Automation Account, your accounts modules might be outdated.
A simple way to prove this is to create a new runbook and put this into it:
Get-Command Set-AzureRmSqlDatabase
Execute the runbook from the portal and view the output. You will be surprised to see what module version it will report back to you.
Luckily I had an very old Automation Account laying around to prove it for you:
After the update
The results are:
Upvotes: 3