Query su tabelle

L'operazione Query Tables restituisce un elenco di tabelle con l'account specificato.

Richiesta

È possibile costruire la Query Tables richiesta come indicato di seguito. È consigliabile usare HTTPS. Sostituire myaccount con il nome dell'account di archiviazione.

Metodo URI richiesta Versione HTTP
GET https://myaccount.table.core.windows.net/Tables HTTP/1.1

URI del servizio di archiviazione emulato

Quando si effettua una richiesta per il servizio di archiviazione emulato, specificare il nome host dell'emulatore e la porta del servizio tabelle come 127.0.0.1:10002. Seguire queste informazioni con il nome dell'account di archiviazione emulato.

Metodo URI richiesta Versione HTTP
GET http://127.0.0.1:10002/devstoreaccount1/Tables HTTP/1.1

Il servizio tabelle nell'emulatore di archiviazione differisce da Archiviazione tabelle di Azure in diversi modi. Per altre informazioni, vedere Differenze tra l'emulatore di archiviazione e i servizi di archiviazione di Azure.

Parametri URI

L'operazione Query Tables supporta le opzioni di query definite dalla specifica del protocollo OData .

Intestazioni della richiesta

La tabella seguente descrive le intestazioni di richiesta obbligatorie e facoltative:

Intestazione della richiesta Descrizione
Authorization Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
Date o x-ms-date Obbligatorio. Specifica la data per la richiesta nel fuso orario UTC (Coordinated Universal Time). Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
x-ms-version Facoltativa. Specifica la versione dell'operazione da usare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure.
Accept Facoltativa. Specifica il tipo di contenuto accettato del payload di risposta. I valori possibili sono:

- application/atom+xml (solo versioni precedenti alla versione 2015-12-11)
- application/json;odata=nometadata
- application/json;odata=minimalmetadata
- application/json;odata=fullmetadata

Per altre informazioni, vedere Formato del payload per le operazioni di archiviazione tabelle.
x-ms-client-request-id Facoltativa. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB) registrato nei log al momento della configurazione della registrazione. È consigliabile usare questa intestazione per correlare le attività lato client alle richieste ricevute dal server.

Testo della richiesta

Nessuno.

Risposta

Nella risposta sono inclusi un codice di stato HTTP, un set di intestazioni per la risposta e il corpo di una risposta.

Codice stato

Un'operazione completata correttamente restituisce 200 (OK).

Per informazioni sui codici di stato, vedere Codici di errore e di stato e codici di errore di archiviazione tabelle.

Intestazioni di risposta

Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; La risposta potrebbe includere anche intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.

Intestazione risposta Descrizione
x-ms-continuation-NextTableName Restituisce il valore del token di continuazione. Se il numero di tabelle da restituire supera 1.000 o la query non viene completata entro l'intervallo di timeout, l'intestazione della risposta include l'intestazione di x-ms-continuation-NextTableName continuazione. Per altre informazioni sull'uso del token di continuazione, vedere Timeout delle query e paginazione.
x-ms-request-id Identifica in modo univoco la richiesta effettuata. È possibile usarlo per risolvere i problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni api.
x-ms-version Indica la versione dell'archiviazione tabelle usata per eseguire la richiesta. Questa intestazione viene restituita per le richieste effettuate nella versione 2009-09-19 e successive.
Date Valore di data/ora UTC che indica l'ora in cui il servizio ha inviato la risposta.
Content-Type Indica il tipo di contenuto del payload. Il valore dipende dall'intestazione della Accept richiesta. I valori possibili sono:

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

Per altre informazioni sui tipi di contenuto validi, vedere Formato del payload per le operazioni di archiviazione tabelle.
x-ms-client-request-id Può essere usato per risolvere i problemi relativi alle richieste e alle risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id , se è presente nella richiesta e il valore è al massimo 1.024 caratteri ASCII visibili. Se l'intestazione x-ms-client-request-id non è presente nella richiesta, questa intestazione non sarà presente nella risposta.

Corpo della risposta

L'operazione Query Tables restituisce l'elenco delle tabelle nell'account come set di entità OData. In base al valore dell'intestazione Accept , il contenuto è JSON o un feed Atom.

Nota

È consigliabile usare JSON come formato di payload. È l'unico formato supportato per la versione 2015-12-11 e successive.

JSON (versione 2013-08-15 e successive)

Ecco un esempio di corpo della risposta JSON per un'operazione Query Tables con metadati completi:

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

Ecco un corpo di risposta JSON di esempio per un'operazione Query Tables con metadati minimi:

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

Ecco un corpo di risposta JSON di esempio per un'operazione Query Tables senza metadati:

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

Feed Atom (versioni precedenti al 2015-12-11)

Ecco un esempio di corpo della risposta Atom per l'operazione 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>   

Autorizzazione

Solo il proprietario dell'account può chiamare questa operazione.

Commenti

Una query su Archiviazione tabelle può restituire un massimo di 1.000 tabelle contemporaneamente ed eseguire per un massimo di cinque secondi. La risposta include un'intestazione personalizzata che contiene il x-ms-continuation-NextTableName token di continuazione in uno dei casi seguenti:

  • Il set di risultati contiene più di 1.000 tabelle.
  • La query non è stata completata entro cinque secondi.
  • La query supera il limite della partizione.

È possibile usare la continuazione per costruire una richiesta successiva per la pagina successiva di dati. Per altre informazioni sui token di continuazione, vedere Timeout delle query e paginazione.

Nota

Quando si effettuano richieste successive che includono token di continuazione, assicurarsi di passare l'URI originale nella richiesta. Ad esempio, se è stata specificata un'opzione $filterdi query , $selecto $top come parte della richiesta originale, includere tale opzione nelle richieste successive. In caso contrario, le richieste successive potrebbero restituire risultati imprevisti.

L'opzione $top query in questo caso specifica il numero massimo di risultati per pagina. Non specifica il numero massimo di risultati nell'intero set di risposte.

Per altre informazioni, vedere Eseguire query su tabelle ed entità.

Il tempo totale assegnato alla richiesta di pianificazione ed elaborazione della query è di 30 secondi. Il totale include i cinque secondi per l'esecuzione della query.

Per altre informazioni sulle operazioni di query supportate sull'archiviazione tabelle tramite LINQ, vedere Operatori di query supportati per l'archiviazione tabelle e Scrivere query LINQ su Archiviazione tabelle.

Vedi anche

Indirizzamento delle risorse di archiviazione tabelle
Autorizzare le richieste ad Archiviazione di Azure
Impostare le intestazioni della versione del servizio dati OData
Stato e codici errore
Codici di errore di archiviazione tabelle