Использование Get-AzureStorageFileContent для выполнения SQL сценария из Azure общего хранилища файлов - PullRequest
0 голосов
/ 18 апреля 2020

Я использую Invoke-Sqlcmd для получения -InputFile из общего ресурса хранения Azure. Я использую Get-AzureStorageFileContent для получения файла из Azure Хранилища, но получаю сообщение об ошибке ниже. Приветствуется любая помощь или понимание.

Get-AzureStorageFileContent: удаленный сервер возвратил ошибку: (404) Not Found. Код состояния HTTP: 404 - Сообщение об ошибке HTTP: указанный ресурс не существует. В строке: 35 символов: 1

Ниже приведен скрипт Powershell:

$ctx = New-AzureStorageContext -StorageAccountName $azureStorageAccount -StorageAccountKey $storageKey
Get-AzureStorageFileContent -ShareName $azureFileShare -Path $azureFilePath -Destination $destination -Context  $ctx 
# Set Connection parameters
$params = @{
    'Database' = $Database
    'ServerInstance' = $ServerInstance
    'Username' = $dbusername
    'Password' = $dbpassword
    'InputFile' = $ctx+'\'+$scriptFile

}

Invoke-Sqlcmd @params

1 Ответ

0 голосов
/ 20 апреля 2020

Я нашел ответ на свой вопрос по этой ссылке Как скопировать содержимое файла .csv, помещенного в файловое хранилище azure, в переменную powershell?

Я использовал Get-AzureStorageFileContent, чтобы загрузить файл в папку $ evn: temp в runbook powershell, а затем использовал его в Invoke-Sqlcmd.

Get-AzureStorageFileContent -ShareName $azureFileShare -Path $azureFilePath -Destination $env:temp -Context $context

# Set Connection parameters
$params = @{
    'Database' = $Database
    'ServerInstance' = $ServerInstance
    'Username' = $dbusername
    'Password' = $dbpassword
    'InputFile' = $env:temp

}

Invoke-Sqlcmd @params
...