python色表_python查询天蓝色表的所有行

I have around 20000 rows in my azure table . I wanted to query all the rows in the azure table . But due to certain azure limitation i am getting only 1000 rows.

My code

from azure.storage import TableService

table_service = TableService(account_name='xxx', account_key='YYY')

i=0

tasks=table_service.query_entities('ValidOutputTable',"PartitionKey eq 'tasksSeattle'")

for task in tasks:

i+=1

print task.RowKey,task.DomainUrl,task.Status

print i

I want to get all the rows from the validoutputtable .Is there a way to do so

解决方案But due to certain azure limitation i am getting only 1000 rows.

This is a documented limitation. Each query request to Azure Table will return no more than 1000 rows. If there are more than 1000 entities, table service will return a continuation token that must be used to fetch next set of entities (See Remarks section here: http://msdn.microsoft.com/en-us/library/azure/dd179421.aspx)

Please see the sample code to fetch all entities from a table:

from azure import *

from azure.storage import TableService

table_service = TableService(account_name='xxx', account_key='yyy')

i=0

next_pk = None

next_rk = None

while True:

entities=table_service.query_entities('Address',"PartitionKey eq 'Address'", next_partition_key = next_pk, next_row_key = next_rk, top=1000)

i+=1

for entity in entities:

print(entity.AddressLine1)

if hasattr(entities, 'x_ms_continuation'):

x_ms_continuation = getattr(entities, 'x_ms_continuation')

next_pk = x_ms_continuation['nextpartitionkey']

next_rk = x_ms_continuation['nextrowkey']

else:

break;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值