你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

查询表

Query Tables操作返回指定帐户中的表的列表。

请求

可以按如下所示构造 Query Tables 请求。 建议使用 HTTPS。 将 myaccount 替换为存储帐户的名称。

方法 请求 URI HTTP 版本
GET https://myaccount.table.core.windows.net/Tables HTTP/1.1

模拟存储服务 URI

对模拟存储服务发出请求时,请将模拟器的主机名和表服务的端口指定为 127.0.0.1:10002。 使用模拟存储帐户的名称来跟踪该信息。

方法 请求 URI HTTP 版本
GET http://127.0.0.1:10002/devstoreaccount1/Tables HTTP/1.1

存储模拟器中的表服务在多个方面与 Azure 表存储不同。 有关详细信息,请参阅 存储模拟器与 Azure 存储服务之间的差异

URI 参数

操作 Query Tables 支持 OData 协议规范 定义的查询选项。

请求标头

下表介绍了必需请求标头和可选请求标头:

请求标头 说明
Authorization 必需。 指定授权方案、帐户名称和签名。 有关详细信息,请参阅授权对 Azure 存储的请求
Datex-ms-date 必需。 指定请求的协调世界时 (UTC)。 有关详细信息,请参阅授权对 Azure 存储的请求
x-ms-version 可选。 指定用于此请求的操作的版本。 有关详细信息,请参阅 Azure 存储服务的版本控制
Accept 可选。 指定响应负载已接受的内容类型。 可能的值包括:

- application/atom+xml (2015-12-11 之前的版本仅)
- application/json;odata=nometadata
- application/json;odata=minimalmetadata
- application/json;odata=fullmetadata

有关详细信息,请参阅 表存储操作的有效负载格式
x-ms-client-request-id 可选。 提供客户端生成的不透明值,其中包含 1-kiB (KiB) 配置日志记录时记录在日志中的字符限制。 强烈建议使用此标头将客户端活动与服务器接收的请求相关联。

请求正文

无。

响应

响应包括 HTTP 状态代码、一组响应标头和响应正文。

状态代码

此操作成功后返回状态代码 200(正常)。

有关状态代码的信息,请参阅 状态和错误代码表存储错误代码

响应头

此操作的响应包括以下标头。 响应可能还包括其他标准 HTTP 标头。 所有标准标头都符合 HTTP/1.1 协议规范

响应标头 说明
x-ms-continuation-NextTableName 返回延续标记值。 如果要返回的表数超过 1,000 个,或者查询未在超时间隔内完成,则响应标头包括 x-ms-continuation-NextTableName 延续标头。 有关使用延续标记的详细信息,请参阅 查询超时和分页
x-ms-request-id 唯一标识发出的请求。 可以使用它对请求进行故障排除。 有关详细信息,请参阅 API 操作疑难解答
x-ms-version 指示用于执行请求的表存储版本。 针对 2009-09-19 和更高版本发出的请求将返回此标头。
Date 一个 UTC 日期/时间值,该值指示服务发送响应的时间。
Content-Type 指示负载的内容类型。 该值取决于请求的 Accept 标头。 可能的值包括:

- application/atom+xml
- application/json;odata=nometadata
- application/json;odata=minimalmetadata
- application/json;odata=fullmetadata

有关有效内容类型的详细信息,请参阅 表存储操作的有效负载格式
x-ms-client-request-id 可用于对请求和相应响应进行故障排除。 如果请求中存在此标头的值 x-ms-client-request-id ,并且该值最多为 1,024 个可见 ASCII 字符,则此标头的值等于标头的值。 x-ms-client-request-id如果请求中不存在标头,则响应中不会显示此标头。

响应正文

Query Tables操作返回帐户中的表列表作为 OData 实体集。 根据标头的值 Accept ,内容为 JSON 或 Atom 源。

注意

建议将 JSON 作为有效负载格式。 它是版本 2015-12-11 及更高版本唯一支持的格式。

JSON (版本 2013-08-15 及更高版本)

下面是包含完整元数据的操作的示例 JSON 响应正文 Query Tables

{  
   "odata.metadata":"https://myaccount.table.core.windows.net/$metadata#Tables",  
   "value":[  
      {  
         "odata.type":"myaccount.Tables",  
         "odata.id":"https://myaccount.table.core.windows.net/Tables('mytable')",  
         "odata.editLink":"Tables('mytable')",  
         "TableName":"mytable"  
      }  
}  

下面是包含最少元数据的操作的示例 JSON 响应正文 Query Tables

{  
    "odata.metadata":"https://myaccount.table.core.windows.net/$metadata#Tables",  
    "value":[{  
        "TableName":"mytable"  
    }]  
}  

下面是没有元数据的操作的示例 JSON 响应正文 Query Tables

{  
   "value":[{  
       "TableName":"mytable"  
   },  
}  

Atom 源 (2015-12-11 之前的版本)

下面是操作的示例 Atom 响应正文 Query Tables

<?xml version="1.0" encoding="utf-8" standalone="yes"?>  
<feed xml:base="https://myaccount.table.core.windows.net/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">  
  <title type="text">Tables</title>  
  <id>https://myaccount.table.core.windows.net/Tables</id>  
  <updated>2009-01-04T17:18:54.7062347Z</updated>  
  <link rel="self" title="Tables" href="Tables" />  
  <entry>  
    <id>https://myaccount.table.core.windows.net/Tables('mytable')</id>  
    <title type="text"></title>  
    <updated>2009-01-04T17:18:54.7062347Z</updated>  
    <author>  
      <name />  
    </author>  
    <link rel="edit" title="Tables" href="Tables('mytable')" />  
    <category term="myaccount.Tables" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />  
    <content type="application/xml">  
      <m:properties>  
        <d:TableName>mytable</d:TableName>  
      </m:properties>  
    </content>  
  </entry>  
</feed>   

授权

只有帐户所有者才能调用此操作。

注解

针对表存储的查询一次最多可以返回 1,000 个表,并且最多运行 5 秒。 响应包括一个自定义标头,其中包含 x-ms-continuation-NextTableName 以下任一情况下的延续标记:

  • 结果集包含超过 1,000 个表。
  • 查询未在五秒内完成。
  • 查询跨越分区边界。

可以使用 延续来构造下一页数据的后续请求。 有关延续令牌的详细信息,请参阅 查询超时和分页

注意

在发出包含延续令牌的后续请求时,请确保在请求上传递原始 URI。 例如,如果已将 、 $select$top 查询选项指定为原始请求的一$filter部分,请在后续请求中包含该选项。 否则,后续请求可能会返回意外结果。

在这种情况下,查询 $top 选项指定每页的最大结果数。 它不会指定整个响应集中的最大结果数。

有关详细信息,请参阅 查询表和实体

分配给请求以计划和处理查询的总时间为 30 秒。 该总数包括执行查询的 5 秒。

有关通过 LINQ 对表存储支持的查询操作的详细信息,请参阅 表存储支持的查询运算符针对表存储编写 LINQ 查询

另请参阅

寻址表存储资源
授权对 Azure 存储的请求
设置 OData 数据服务版本标头
状态和错误代码
表存储错误代码