Freigeben über


Abfragen von Tabellen

Der Query Tables-Vorgang gibt eine Liste der Tabellen unter dem angegebenen Konto zurück.

Anforderung

Sie können die Query Tables Anforderung wie folgt erstellen. Wir empfehlen HTTPS. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos.

Methode Anforderungs-URI HTTP-Version
GET https://myaccount.table.core.windows.net/Tables HTTP/1.1

Emulierter Speicherdienst-URI

Wenn Sie eine Anforderung für den emulierten Speicherdienst stellen, geben Sie den Hostnamen des Emulators und den Port des Tabellendiensts als an 127.0.0.1:10002. Folgen Sie diesen Informationen mit dem Namen des emulierten Speicherkontos.

Methode Anforderungs-URI HTTP-Version
GET http://127.0.0.1:10002/devstoreaccount1/Tables HTTP/1.1

Der Tabellendienst im Speicheremulator unterscheidet sich in vielerlei Hinsicht von Azure Table Storage. Weitere Informationen finden Sie unter Unterschiede zwischen dem Speicheremulator und den Azure Storage-Diensten.

URI-Parameter

Der Query Tables Vorgang unterstützt die Abfrageoptionen, die die OData-Protokollspezifikation definiert.

Anforderungsheader

In der folgenden Tabelle werden erforderliche und optionale Anforderungsheader beschrieben:

Anforderungsheader BESCHREIBUNG
Authorization Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage.
Date oder x-ms-date Erforderlich. Gibt die koordinierte Weltzeit (Coordinated Universal Time, UTC) für die Anforderung an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage.
x-ms-version Optional. Gibt die Version des für die Anforderung zu verwendenden Vorgangs an. Weitere Informationen finden Sie unter Versionsverwaltung für die Azure-Speicherdienste.
Accept Optional. Gibt den akzeptierten Inhaltstyp der Antwortnutzlast an. Mögliche Werte:

- application/atom+xml (Nur Versionen vor dem 11.12.2015)
- application/json;odata=nometadata
- application/json;odata=minimalmetadata
- application/json;odata=fullmetadata

Weitere Informationen finden Sie unter Nutzlastformat für Tabellenspeichervorgänge.
x-ms-client-request-id Optional. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem Zeichenlimit von 1 Kibibyte (KiB) bereit, der beim Konfigurieren der Protokollierung in den Protokollen aufgezeichnet wird. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt.

Anforderungstext

Keine.

Antwort

Die Antwort enthält den HTTP-Statuscode, einen Satz von Antwortheadern und einen Antworttext.

Statuscode

Bei einem erfolgreichen Vorgang wird der Statuscode 200 (OK) zurückgegeben.

Informationen zu status-Codes finden Sie unter Status- und Fehlercodes und Tabellenspeicherfehlercodes.

Antwortheader

Die Antwort für diesen Vorgang umfasst die folgenden Header. Die Antwort kann auch zusätzliche HTTP-Standardheader enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.

Antwortheader BESCHREIBUNG
x-ms-continuation-NextTableName Gibt den Wert für das Fortsetzungstoken zurück. Wenn die Anzahl der zurückzugebenden Tabellen 1.000 überschreitet oder die Abfrage nicht innerhalb des Timeoutintervalls abgeschlossen wird, enthält der Antwortheader den x-ms-continuation-NextTableName Fortsetzungsheader. Weitere Informationen zur Verwendung des Fortsetzungstokens finden Sie unter Abfragetimeout und Paginierung.
x-ms-request-id Identifiziert eindeutig die Anforderung, die gestellt wurde. Sie können es verwenden, um die Problembehandlung für die Anforderung zu beheben. Weitere Informationen finden Sie unter Problembehandlung bei API-Vorgängen.
x-ms-version Gibt die Version von Table Storage an, die zum Ausführen der Anforderung verwendet wird. Dieser Header wird für Anforderungen zurückgegeben, die für Version 2009-09-19 und höher erfolgen.
Date Ein UTC-Datums-/Uhrzeitwert, der die Uhrzeit angibt, zu der der Dienst die Antwort gesendet hat.
Content-Type Gibt den Inhaltstyp der Nutzlast an. Der Wert hängt vom Header der Accept Anforderung ab. Mögliche Werte:

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

Weitere Informationen zu gültigen Inhaltstypen finden Sie unter Nutzlastformat für Tabellenspeichervorgänge.
x-ms-client-request-id Kann verwendet werden, um Anforderungen und entsprechende Antworten zu behandeln. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id Headers, wenn er in der Anforderung vorhanden ist und der Wert höchstens 1.024 sichtbare ASCII-Zeichen aufweist. Wenn der x-ms-client-request-id Header in der Anforderung nicht vorhanden ist, ist dieser Header in der Antwort nicht vorhanden.

Antworttext

Durch den Query Tables-Vorgang wird die Liste der Tabellen im Konto als OData-Entitätenmenge zurückgegeben. Gemäß dem Wert des Accept Headers ist der Inhalt entweder JSON oder ein Atom-Feed.

Hinweis

Wir empfehlen JSON als Nutzlastformat. Es ist das einzige unterstützte Format für Version 2015-12-11 und höher.

JSON (Version 2013-08-15 und höher)

Hier sehen Sie einen JSON-Beispielantworttext für einen Query Tables Vorgang mit vollständigen Metadaten:

{  
   "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"  
      }  
}  

Hier sehen Sie einen JSON-Beispielantworttext für einen Query Tables Vorgang mit minimalen Metadaten:

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

Hier sehen Sie einen JSON-Beispielantworttext für einen Query Tables Vorgang ohne Metadaten:

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

Atomvorschub (Versionen vor dem 11.12.2015)

Hier ist ein Beispiel für den Atom-Antworttext für den Query Tables Vorgang:

<?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>   

Authorization

Nur der Kontobesitzer kann diesen Vorgang aufrufen.

Hinweise

Eine Abfrage für Table Storage kann maximal 1.000 Tabellen gleichzeitig zurückgeben und maximal fünf Sekunden lang ausgeführt werden. Die Antwort enthält einen benutzerdefinierten Header, der das x-ms-continuation-NextTableName Fortsetzungstoken in einem der folgenden Fälle enthält:

  • Das Resultset enthält mehr als 1.000 Tabellen.
  • Die Abfrage wurde nicht innerhalb von fünf Sekunden abgeschlossen.
  • Die Abfrage überschreitet die Partitionsgrenze.

Sie können die Fortsetzung verwenden, um eine nachfolgende Anforderung für die nächste Datenseite zu erstellen. Weitere Informationen zu Fortsetzungstoken finden Sie unter Abfragetimeout und Paginierung.

Hinweis

Wenn Sie nachfolgende Anforderungen stellen, die Fortsetzungstoken enthalten, müssen Sie den ursprünglichen URI für die Anforderung übergeben. Wenn Sie beispielsweise eine $filterAbfrageoption , $selectoder $top als Teil der ursprünglichen Anforderung angegeben haben, schließen Sie diese Option für nachfolgende Anforderungen ein. Andernfalls können Ihre nachfolgenden Anforderungen unerwartete Ergebnisse zurückgeben.

Die $top Abfrageoption gibt in diesem Fall die maximale Anzahl von Ergebnissen pro Seite an. Es gibt nicht die maximale Anzahl von Ergebnissen im gesamten Antwortsatz an.

Weitere Informationen finden Sie unter Abfragen von Tabellen und Entitäten.

Die der Anforderung für die Planung und Verarbeitung der Abfrage zugewiesene Gesamtzeit beträgt 30 Sekunden. Diese Summe umfasst die fünf Sekunden für die Abfrageausführung.

Weitere Informationen zu unterstützten Abfragevorgängen für Table Storage über LINQ finden Sie unter Unterstützte Abfrageoperatoren für Tabellenspeicher und Schreiben von LINQ-Abfragen für Tabellenspeicher.

Weitere Informationen

Adressieren von Tabellenspeicherressourcen
Autorisieren von Anforderungen an Azure Storage
Festlegen der OData-Datendienstversionsheader
Status- und Fehlercodes
Tabellenspeicherfehlercodes