我有一个名为 csvtable
的 Azure 表,它有大约一百万行。我想使用 Azure 函数对此进行查询并返回一行。
我尝试过使用与表的输入集成,但是据我所知,这只给我 $inputTable
变量中的数据子集进行过滤。
我也尝试过打开 identity
并使用 Get-AzStorageTable
cmdlet,但这会导致 HTTP 500
,我假设它与托管身份不支持表存储有关(还?)link
代码在本地运行良好:
$storageAccountName = 'storageAccountName '
$storageAccountkey = 'storageAccountkey'
$tableName = "MyTable"
$storageContext = (New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountkey).Context
$table = (Get-AzStorageTable -Table $tableName -Context $storageContext).CloudTable
Get-AzTableRow -Table $table -CustomFilter "(PartitionKey eq '0401' and EnterpriseNumber eq '0401.021.061')"
最佳答案
我最终使用了一位顶级 comments 所建议的 REST API 路由.
使用托管身份我什至无法检索 Azure 表。
使用 StorageAccount
和 SAS
-key 组合,我可以检索表,但是当尝试使用 Get-AzTableRow
获取数据时,它似乎该 cmdlet 未安装在函数中。
更新
我设法通过添加 AzTable
模块让它工作
要在门户中实现此目的:
单击函数应用的根目录
在Function App settings中,转到Development Tools
打开高级工具 (Kudu)
选择调试控制台、PowerShell(顶部栏)
cd 到 home\site\wwwroot
将
AzTable = '2.*'
key 对添加到.\requirements.psd1
(使用 Set-Content)
关于powershell - 如何使用 PowerShell 从 Azure 函数查询 Azure 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60864083/