Моя задача - получить список пользователей из наших баз данных SQL Azure. У нас есть сотни баз данных Azure SQL, и я хочу использовать PowerShell для быстрого выполнения этой задачи.
Я использую строку подключения (Active Directory Integrated). Я полагаю, что могу войти в базу данных SQL, используя строку подключения с PowerShell.
Однако при выполнении SQL появляется ошибка. Ниже приведен код и исключение. Не могли бы вы мне помочь?
Код:
try {
$new = 'Server=tcp:dummy.database.windows.net,1433;Authentication="Active Directory Integrated";Initial Catalog=xtoiteuitbdbsqldb01;Persist Security Info=False;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;'
$sql = "SELECT * FROM sys.database_principals"
$temp_result_object = invoke-sqlcmd -ConnectionString $new -Query $sql
} catch {
"error when running sql $sql"
write-host "Exception type: $($_.Exception.GetType().FullName)" -ForegroundColor Red
write-host "Exception message: $($_.Exception.Message)" -ForegroundColor Red
write-host "Error: " $_.Exception -ForegroundColor Red
}
Исключение:
Тип исключения: ManagedBatchParser.ParserException
Сообщение об исключении:
Ошибка: ManagedBatchParser.ParserException
в ManagedBatchParser.Parser.Parse ()
в Microsoft.SqlServer.Management.PowerShell.ExecutionProcessor.ExecuteTSql (String sqlCommand)