2017-06-06 1 views
0

Je souhaite obtenir le nombre de lignes dans une partition. J'ai le code pour obtenir le nombre total de lignes. Comment puis-je le modifier pour obtenir le compte d'une partition particulière. Aussi, je reçois un avertissement pour récupérer le nombre de lignes et ne pas obtenir le compte sur la fenêtre powershell. Y a-t-il de la documentation à ce sujet?Obtenir le nombre de lignes dans une partition d'une table azure à l'aide d'Azure PowerShell

function GetTable($connectionString, $tableName) 
{ 
    $context = New-AzureStorageContext -ConnectionString $connectionString 
    $azureStorageTable = Get-AzureStorageTable $tableName -Context $context 
    $azureStorageTable 
} 

function GetTableCount($table) 
{ 
    #Create a table query. 
    $query = New-Object Microsoft.WindowsAzure.Storage.Table.TableQuery 

    #Define columns to select. 
    $list = New-Object System.Collections.Generic.List[string] 
    $list.Add("PartitionKey") 

    #Set query details. 
    $query.SelectColumns = $list 

    #Execute the query. 
    $entities = $table.CloudTable.ExecuteQuery($query) 
    ($entities | measure).Count 
} 

$connectionString = "xyz" 
$table = GetTable $connectionString SystemAudit 
GetTableCount $table 

Répondre

0

Comment puis-je modifier pour obtenir compte pour une partition particulière

Il y a une fonction Get-AzureStorageTableRowByPartitionKey vous pouvez utiliser, et ce qui suit est le code exemple

function GetTable($connectionString, $tableName) 
{ 
    $context = New-AzureStorageContext -ConnectionString $connectionString 
    $azureStorageTable = Get-AzureStorageTable $tableName -Context $context 
    $azureStorageTable 
} 

function GetTableCount($table) 
{ 

    $list = Get-AzureStorageTableRowByPartitionKey -table $table –partitionKey “storage” | measure 
    $list.Count 
} 
Import-Module AzureRmStorageTable 
$connectionString = xyz" 
$table = GetTable $connectionString <yourTableName> 
GetTableCount $table 

Vous pouvez en savoir plus d'informations sur this blog