Condividi tramite


TableServiceClient Classe

Un client per interagire con il servizio tabelle a livello di account.

Questo client fornisce operazioni per recuperare e configurare le proprietà dell'account e l'elenco, creare ed eliminare tabelle all'interno dell'account. Per le operazioni relative a una tabella specifica, è possibile recuperare un client per questa entità usando la get_table_client funzione.

Creare TablesBaseClient da una credenziale.

Ereditarietà
azure.data.tables._base_client.TablesBaseClient
TableServiceClient

Costruttore

TableServiceClient(endpoint: str, *, credential: AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs)

Parametri

endpoint
str
Necessario

URL dell'endpoint del servizio tabelle. Tutte le altre entità incluse nel percorso URL (ad esempio la tabella) verranno rimosse. Questo URL può essere autenticato facoltativamente con un token di firma di accesso condiviso.

credential
AzureNamedKeyCredential oppure AzureSasCredential oppure TokenCredential oppure None

Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL dell'account ha già un token di firma di accesso condiviso. Il valore può essere uno di AzureNamedKeyCredential (azure-core), AzureSasCredential (azure-core) o un'implementazione di TokenCredential da azure-identity.

api_version
str

Versione dell'API di archiviazione da usare per le richieste. Il valore predefinito è '2019-02-02'. L'impostazione su una versione precedente può comportare una riduzione della compatibilità delle funzionalità.

endpoint
str
Necessario

URL di un account Tabelle di Azure.

credential
AzureNamedKeyCredential oppure AzureSasCredential oppure TokenCredential oppure None

Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL dell'account ha già un token di firma di accesso condiviso. Il valore può essere uno di AzureNamedKeyCredential (azure-core), AzureSasCredential (azure-core) o un'implementazione di TokenCredential da azure-identity.

api_version
str oppure None

Specifica la versione dell'operazione da usare per questa richiesta. Il valore predefinito è "2019-02-02".

Esempio

Autenticazione di un oggetto TableServiceClient da una chiave di accesso condiviso


   from azure.data.tables import TableServiceClient
   from azure.core.credentials import AzureNamedKeyCredential, AzureSasCredential

   # Create a SAS token to use for authentication of a client
   from azure.data.tables import generate_account_sas, ResourceTypes, AccountSasPermissions

   print("Account name: {}".format(self.account_name))
   credential = AzureNamedKeyCredential(self.account_name, self.access_key)  # type: ignore[arg-type]
   sas_token = generate_account_sas(
       credential,
       resource_types=ResourceTypes(service=True),
       permission=AccountSasPermissions(read=True),
       expiry=datetime.utcnow() + timedelta(hours=1),
   )

   with TableServiceClient(
       endpoint=self.endpoint, credential=AzureSasCredential(sas_token)
   ) as token_auth_table_service:
       properties = token_auth_table_service.get_service_properties()
       print("Shared Access Signature: {}".format(properties))

Autenticazione di un oggetto TableServiceClient da una chiave dell'account condiviso


   from azure.data.tables import TableServiceClient
   from azure.core.credentials import AzureNamedKeyCredential

   credential = AzureNamedKeyCredential(self.account_name, self.access_key)  # type: ignore[arg-type]
   with TableServiceClient(endpoint=self.endpoint, credential=credential) as table_service:
       properties = table_service.get_service_properties()
       print("Shared Key: {}".format(properties))

Variabili

account_name
str

Nome dell'account Tabelle.

url
str

URL completo dell'account Tabelle.

Metodi

close

Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto.

create_table

Crea una nuova tabella nell'account corrente.

create_table_if_not_exists

Crea una nuova tabella se non esiste attualmente. Se la tabella esiste attualmente, viene restituita la tabella corrente.

delete_table

Elimina la tabella nell'account corrente. Non verrà generato alcun errore se la tabella specificata non viene trovata.

from_connection_string

Creare TableServiceClient da una stringa di connessione.

get_service_properties

Ottiene le proprietà del servizio tabelle di un account, incluse le proprietà per le regole analisi e CORS (Cross-Origin Resource Sharing).

get_service_stats

Recupera le statistiche correlate alla replica per il servizio tabelle. È disponibile solo nell'endpoint della posizione secondaria quando la replica con ridondanza geografica di accesso in lettura è abilitata per l'account.

get_table_client

Ottenere un client per interagire con la tabella specificata.

La tabella non esiste già.

list_tables

Esegue query sulle tabelle nell'account specificato.

query_tables

Esegue query sulle tabelle nell'account specificato.

set_service_properties

Imposta le proprietà per l'endpoint del servizio tabelle di un account, incluse le proprietà per le regole analisi e CORS (Cross-Origin Resource Sharing).

close

Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto.

close() -> None

create_table

Crea una nuova tabella nell'account corrente.

create_table(table_name: str, **kwargs) -> TableClient

Parametri

table_name
str
Necessario

Nome tabella.

Restituisce

TableClient

Tipo restituito

Eccezioni

Esempio

Creazione di una tabella dall'oggetto TableServiceClient


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       try:
           table_client = table_service_client.create_table(table_name=self.table_name)
           print("Created table {}!".format(table_client.table_name))
       except ResourceExistsError:
           print("Table already exists")

create_table_if_not_exists

Crea una nuova tabella se non esiste attualmente. Se la tabella esiste attualmente, viene restituita la tabella corrente.

create_table_if_not_exists(table_name: str, **kwargs) -> TableClient

Parametri

table_name
str
Necessario

Nome tabella.

Restituisce

TableClient

Tipo restituito

Eccezioni

Esempio

Creazione di una tabella se non esiste, dall'oggetto TableServiceClient


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       table_client = table_service_client.create_table_if_not_exists(table_name=self.table_name)
       print("Table name: {}".format(table_client.table_name))

delete_table

Elimina la tabella nell'account corrente. Non verrà generato alcun errore se la tabella specificata non viene trovata.

delete_table(table_name: str, **kwargs) -> None

Parametri

table_name
str
Necessario

Nome tabella.

Restituisce

Nessuno

Eccezioni

Esempio

Eliminazione di una tabella dall'oggetto TableServiceClient


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       table_service_client.delete_table(table_name=self.table_name)
       print("Deleted table {}!".format(self.table_name))

from_connection_string

Creare TableServiceClient da una stringa di connessione.

from_connection_string(conn_str: str, **kwargs) -> TableServiceClient

Parametri

conn_str
str
Necessario

Stringa di connessione a un account di archiviazione di Azure o Cosmos.

Restituisce

Client del servizio tabelle.

Tipo restituito

Esempio

Autenticazione di un oggetto TableServiceClient da un connection_string


   from azure.data.tables import TableServiceClient

   with TableServiceClient.from_connection_string(conn_str=self.connection_string) as table_service:
       properties = table_service.get_service_properties()
       print("Connection String: {}".format(properties))

get_service_properties

Ottiene le proprietà del servizio tabelle di un account, incluse le proprietà per le regole analisi e CORS (Cross-Origin Resource Sharing).

get_service_properties(**kwargs) -> Dict[str, object]

Restituisce

Dizionario delle proprietà del servizio

Tipo restituito

Eccezioni

get_service_stats

Recupera le statistiche correlate alla replica per il servizio tabelle. È disponibile solo nell'endpoint della posizione secondaria quando la replica con ridondanza geografica di accesso in lettura è abilitata per l'account.

get_service_stats(**kwargs) -> Dict[str, object]

Restituisce

Dizionario delle statistiche del servizio

Tipo restituito

Eccezioni

azure.core.exceptions.HttpResponseError:

get_table_client

Ottenere un client per interagire con la tabella specificata.

La tabella non esiste già.

get_table_client(table_name: str, **kwargs) -> TableClient

Parametri

table_name
str
Necessario

Il nome della tabella

Restituisce

Un oggetto TableClient.

Tipo restituito

list_tables

Esegue query sulle tabelle nell'account specificato.

list_tables(**kwargs) -> ItemPaged[TableItem]

Parametri

results_per_page
int

Numero di tabelle per pagina in ItemPaged restituito

Restituisce

Iteratore di TableItem

Tipo restituito

Eccezioni

Esempio

Elencare tutte le tabelle in un account di archiviazione


   # List all the tables in the service
   list_tables = table_service.list_tables()
   print("Listing tables:")
   for table in list_tables:
       print("\t{}".format(table.name))

query_tables

Esegue query sulle tabelle nell'account specificato.

query_tables(query_filter: str, **kwargs) -> ItemPaged[TableItem]

Parametri

query_filter
str
Necessario

Specificare un filtro per restituire determinate tabelle.

results_per_page
int

Numero di tabelle per pagina in ItemPaged restituito

parameters
dict[str, Any]

Dizionario per la formattazione della query con parametri aggiuntivi definiti dall'utente

Restituisce

Iteratore di TableItem

Tipo restituito

Eccezioni

Esempio

Esecuzione di query sulle tabelle in un account di archiviazione


   table_name = "mytable1"
   name_filter = "TableName eq '{}'".format(table_name)
   queried_tables = table_service.query_tables(name_filter)

   print("Queried_tables")
   for table in queried_tables:
       print("\t{}".format(table.name))

set_service_properties

Imposta le proprietà per l'endpoint del servizio tabelle di un account, incluse le proprietà per le regole analisi e CORS (Cross-Origin Resource Sharing).

set_service_properties(**kwargs) -> None

Parametri

analytics_logging
TableAnalyticsLogging

Proprietà per l'analisi

hour_metrics
TableMetrics

Metriche a livello di ora

minute_metrics
TableMetrics

Metriche a livello di minuto

cors
list[TableCorsRule]

Regole di condivisione delle risorse tra origini

Restituisce

Nessuno

Eccezioni

Attributi

api_version

Versione dell'API di archiviazione usata per le richieste.

Restituisce

Versione dell'API di archiviazione.

url

URL completo dell'endpoint per questa entità, incluso il token di firma di accesso condiviso se usato.

Questo potrebbe essere l'endpoint primario o l'endpoint secondario a seconda dell'oggetto corrente <xref:azure.data.tables.location_mode>.

Restituisce

URL dell'endpoint completo, incluso il token di firma di accesso condiviso se usato.

Tipo restituito

str