TableClient class
TableClient rappresenta un client per il servizio Tabelle di Azure che consente di eseguire operazioni su una singola tabella.
Costruttori
Table |
Crea una nuova istanza della classe TableClient. |
Table |
Crea una nuova istanza della classe TableClient. |
Table |
Crea un'istanza di TableClient. |
Table |
Crea una nuova istanza della classe TableClient. |
Proprietà
pipeline | Rappresenta una pipeline per l'esecuzione di una richiesta HTTP a un URL. Le pipeline possono avere più criteri per gestire la modifica di ogni richiesta prima e dopo che è stata effettuata al server. |
table |
Nome della tabella su cui eseguire operazioni. |
url | URL account tabella |
Metodi
create |
Inserire l'entità nella tabella. |
create |
Crea una tabella con tableName passato al costruttore client |
delete |
Elimina l'entità specificata nella tabella. |
delete |
Elimina definitivamente la tabella corrente con tutte le relative entità. |
from |
Crea un'istanza di TableClient dalla stringa di connessione. |
get |
Recupera informazioni dettagliate sui criteri di accesso archiviati specificati nella tabella che possono essere usati con firme di accesso condiviso. |
get |
Restituisce una singola entità nella tabella. |
list |
Esegue query sulle entità in una tabella. |
set |
Imposta i criteri di accesso archiviati per la tabella che può essere utilizzata con le firme di accesso condiviso. |
submit |
Invia una transazione composta da un set di azioni. È possibile specificare le azioni come elenco oppure è possibile usare TableTransaction per facilitare la compilazione della transazione. Esempio di utilizzo:
Esempio di utilizzo con TableTransaction:
|
update |
Aggiornare un'entità nella tabella. |
upsert |
Upsert di un'entità nella tabella. |
Dettagli costruttore
TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)
Crea una nuova istanza della classe TableClient.
new TableClient(url: string, tableName: string, credential: NamedKeyCredential, options?: TableServiceClientOptions)
Parametri
- url
-
string
URL dell'account del servizio di destinazione dell'operazione desiderata, ad esempio "https://myaccount.table.core.windows.net".
- tableName
-
string
nome della tabella
- credential
- NamedKeyCredential
NamedKeyCredential usato per autenticare le richieste. Supportato solo per Node
- options
- TableServiceClientOptions
Facoltativa. Opzioni per configurare la pipeline HTTP.
Esempio di uso di un nome account/chiave:
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables");
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
tableName,
sharedKeyCredential
);
TableClient(string, string, SASCredential, TableServiceClientOptions)
Crea una nuova istanza della classe TableClient.
new TableClient(url: string, tableName: string, credential: SASCredential, options?: TableServiceClientOptions)
Parametri
- url
-
string
URL dell'account del servizio di destinazione dell'operazione desiderata, ad esempio "https://myaccount.table.core.windows.net".
- tableName
-
string
nome della tabella
- credential
- SASCredential
SASCredential usato per autenticare le richieste
- options
- TableServiceClientOptions
Facoltativa. Opzioni per configurare la pipeline HTTP.
Esempio di uso di un token di firma di accesso condiviso:
const { AzureSASCredential, TableClient } = require("@azure/data-tables");
const account = "<storage account name>";
const sasToken = "<sas-token>";
const tableName = "<table name>";
const sasCredential = new AzureSASCredential(sasToken);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
tableName,
sasCredential
);
TableClient(string, string, TableServiceClientOptions)
Crea un'istanza di TableClient.
new TableClient(url: string, tableName: string, options?: TableServiceClientOptions)
Parametri
- url
-
string
Stringa client che punta al servizio tabelle di Archiviazione di Azure, ad esempio "https://myaccount.table.core.windows.net". È possibile aggiungere una firma di accesso condiviso, ad esempio "https://myaccount.table.core.windows.net?sasString".
- tableName
-
string
nome della tabella
- options
- TableServiceClientOptions
Opzioni per configurare la pipeline HTTP.
Esempio di aggiunta di un token di firma di accesso condiviso:
const { TableClient } = require("@azure/data-tables");
const account = "<storage account name>";
const sasToken = "<SAS token>";
const tableName = "<table name>";
const client = new TableClient(
`https://${account}.table.core.windows.net?${sasToken}`,
`${tableName}`
);
TableClient(string, string, TokenCredential, TableServiceClientOptions)
Crea una nuova istanza della classe TableClient.
new TableClient(url: string, tableName: string, credential: TokenCredential, options?: TableServiceClientOptions)
Parametri
- url
-
string
URL dell'account del servizio di destinazione dell'operazione desiderata, ad esempio "https://myaccount.table.core.windows.net".
- tableName
-
string
nome della tabella
- credential
- TokenCredential
Credenziali di Azure Active Directory usate per autenticare le richieste
- options
- TableServiceClientOptions
Facoltativa. Opzioni per configurare la pipeline HTTP.
Esempio di uso di credenziali di Azure Active Directory:
cons { DefaultAzureCredential } = require("@azure/identity");
const { AzureSASCredential, TableClient } = require("@azure/data-tables");
const account = "<storage account name>";
const sasToken = "<sas-token>";
const tableName = "<table name>";
const credential = new DefaultAzureCredential();
const client = new TableClient(
`https://${account}.table.core.windows.net`,
tableName,
credential
);
Dettagli proprietà
pipeline
Rappresenta una pipeline per l'esecuzione di una richiesta HTTP a un URL. Le pipeline possono avere più criteri per gestire la modifica di ogni richiesta prima e dopo che è stata effettuata al server.
pipeline: Pipeline
Valore della proprietà
tableName
Nome della tabella su cui eseguire operazioni.
tableName: string
Valore della proprietà
string
url
URL account tabella
url: string
Valore della proprietà
string
Dettagli metodo
createEntity<T>(TableEntity<T>, OperationOptions)
Inserire l'entità nella tabella.
function createEntity<T>(entity: TableEntity<T>, options?: OperationOptions): Promise<TableInsertEntityHeaders>
Parametri
- entity
-
TableEntity<T>
Proprietà per l'entità di tabella.
- options
- OperationOptions
Parametri delle opzioni.
Esempio di creazione di un'entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// partitionKey and rowKey are required properties of the entity to create
// and accepts any other properties
await client.createEntity({partitionKey: "p1", rowKey: "r1", foo: "Hello!"});
Restituisce
Promise<TableInsertEntityHeaders>
createTable(OperationOptions)
Crea una tabella con tableName passato al costruttore client
function createTable(options?: OperationOptions): Promise<void>
Parametri
- options
- OperationOptions
Parametri delle opzioni.
Esempio di creazione di una tabella
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// calling create table will create the table used
// to instantiate the TableClient.
// Note: If the table already
// exists this function doesn't throw.
await client.createTable();
Restituisce
Promise<void>
deleteEntity(string, string, DeleteTableEntityOptions)
Elimina l'entità specificata nella tabella.
function deleteEntity(partitionKey: string, rowKey: string, options?: DeleteTableEntityOptions): Promise<TableDeleteEntityHeaders>
Parametri
- partitionKey
-
string
Chiave di partizione dell'entità.
- rowKey
-
string
Chiave di riga dell'entità.
- options
- DeleteTableEntityOptions
Parametri delle opzioni.
Esempio di eliminazione di un'entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// deleteEntity deletes the entity that matches
// exactly the partitionKey and rowKey passed as parameters
await client.deleteEntity("<partitionKey>", "<rowKey>")
Restituisce
Promise<TableDeleteEntityHeaders>
deleteTable(OperationOptions)
Elimina definitivamente la tabella corrente con tutte le relative entità.
function deleteTable(options?: OperationOptions): Promise<void>
Parametri
- options
- OperationOptions
Parametri delle opzioni.
Esempio di eliminazione di una tabella
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// calling deleteTable will delete the table used
// to instantiate the TableClient.
// Note: If the table doesn't exist this function doesn't fail.
await client.deleteTable();
Restituisce
Promise<void>
fromConnectionString(string, string, TableServiceClientOptions)
Crea un'istanza di TableClient dalla stringa di connessione.
static function fromConnectionString(connectionString: string, tableName: string, options?: TableServiceClientOptions): TableClient
Parametri
- connectionString
-
string
Stringa di connessione dell'account o stringa di connessione sas di un account di archiviazione di Azure.
[ Nota: la stringa di connessione dell'account può essere usata solo in NODE.JS runtime. ] Esempio di stringa di connessione dell'account -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
Esempio di stringa di connessione di firma di accesso condiviso - BlobEndpoint=https://myaccount.table.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString
- tableName
-
string
- options
- TableServiceClientOptions
Opzioni per configurare la pipeline HTTP.
Restituisce
Nuovo TableClient dalla stringa di connessione specificata.
getAccessPolicy(OperationOptions)
Recupera informazioni dettagliate sui criteri di accesso archiviati specificati nella tabella che possono essere usati con firme di accesso condiviso.
function getAccessPolicy(options?: OperationOptions): Promise<GetAccessPolicyResponse>
Parametri
- options
- OperationOptions
Parametri delle opzioni.
Restituisce
Promise<GetAccessPolicyResponse>
getEntity<T>(string, string, GetTableEntityOptions)
Restituisce una singola entità nella tabella.
function getEntity<T>(partitionKey: string, rowKey: string, options?: GetTableEntityOptions): Promise<GetTableEntityResponse<TableEntityResult<T>>>
Parametri
- partitionKey
-
string
Chiave di partizione dell'entità.
- rowKey
-
string
Chiave di riga dell'entità.
- options
- GetTableEntityOptions
Parametri delle opzioni.
Esempio di recupero di un'entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// getEntity will get a single entity stored in the service that
// matches exactly the partitionKey and rowKey used as parameters
// to the method.
const entity = await client.getEntity("<partitionKey>", "<rowKey>");
console.log(entity);
Restituisce
Promise<GetTableEntityResponse<TableEntityResult<T>>>
listEntities<T>(ListTableEntitiesOptions)
Esegue query sulle entità in una tabella.
function listEntities<T>(options?: ListTableEntitiesOptions): PagedAsyncIterableIterator<TableEntityResult<T>, TableEntityResultPage<T>, PageSettings>
Parametri
- options
- ListTableEntitiesOptions
Parametri delle opzioni.
Esempio di elenco di entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
// list entities returns a AsyncIterableIterator
// this helps consuming paginated responses by
// automatically handling getting the next pages
const entities = client.listEntities();
// this loop will get all the entities from all the pages
// returned by the service
for await (const entity of entities) {
console.log(entity);
}
Restituisce
setAccessPolicy(SignedIdentifier[], OperationOptions)
Imposta i criteri di accesso archiviati per la tabella che può essere utilizzata con le firme di accesso condiviso.
function setAccessPolicy(tableAcl: SignedIdentifier[], options?: OperationOptions): Promise<TableSetAccessPolicyHeaders>
Parametri
- tableAcl
Elenco Controllo di accesso per la tabella.
- options
- OperationOptions
Parametri delle opzioni.
Restituisce
Promise<TableSetAccessPolicyHeaders>
submitTransaction(TransactionAction[])
Invia una transazione composta da un set di azioni. È possibile specificare le azioni come elenco oppure è possibile usare TableTransaction per facilitare la compilazione della transazione.
Esempio di utilizzo:
const { TableClient } = require("@azure/data-tables");
const connectionString = "<connection-string>"
const tableName = "<tableName>"
const client = TableClient.fromConnectionString(connectionString, tableName);
const actions = [
["create", {partitionKey: "p1", rowKey: "1", data: "test1"}],
["delete", {partitionKey: "p1", rowKey: "2"}],
["update", {partitionKey: "p1", rowKey: "3", data: "newTest"}, "Merge"]
]
const result = await client.submitTransaction(actions);
Esempio di utilizzo con TableTransaction:
const { TableClient } = require("@azure/data-tables");
const connectionString = "<connection-string>"
const tableName = "<tableName>"
const client = TableClient.fromConnectionString(connectionString, tableName);
const transaction = new TableTransaction();
// Call the available action in the TableTransaction object
transaction.create({partitionKey: "p1", rowKey: "1", data: "test1"});
transaction.delete("p1", "2");
transaction.update({partitionKey: "p1", rowKey: "3", data: "newTest"}, "Merge")
// submitTransaction with the actions list on the transaction.
const result = await client.submitTransaction(transaction.actions);
function submitTransaction(actions: TransactionAction[]): Promise<TableTransactionResponse>
Parametri
- actions
tupla contenente l'azione da eseguire e l'entità con cui eseguire l'azione
Restituisce
Promise<TableTransactionResponse>
updateEntity<T>(TableEntity<T>, UpdateMode, UpdateTableEntityOptions)
Aggiornare un'entità nella tabella.
function updateEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: UpdateTableEntityOptions): Promise<TableUpdateEntityHeaders>
Parametri
- entity
-
TableEntity<T>
Proprietà dell'entità da aggiornare.
- mode
- UpdateMode
Le diverse modalità per l'aggiornamento dell'entità: - Merge: Aggiornamenti un'entità aggiornando le proprietà dell'entità senza sostituire l'entità esistente. - Sostituisci: Aggiornamenti un'entità esistente sostituendo l'intera entità.
- options
- UpdateTableEntityOptions
Parametri delle opzioni.
Esempio di aggiornamento di un'entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
const entity = {partitionKey: "p1", rowKey: "r1", bar: "updatedBar"};
// Update uses update mode "Merge" as default
// merge means that update will match a stored entity
// that has the same partitionKey and rowKey as the entity
// passed to the method and then will only update the properties present in it.
// Any other properties that are not defined in the entity passed to updateEntity
// will remain as they are in the service
await client.updateEntity(entity)
// We can also set the update mode to Replace, which will match the entity passed
// to updateEntity with one stored in the service and replace with the new one.
// If there are any missing properties in the entity passed to updateEntity, they
// will be removed from the entity stored in the service
await client.updateEntity(entity, "Replace")
Restituisce
Promise<TableUpdateEntityHeaders>
upsertEntity<T>(TableEntity<T>, UpdateMode, OperationOptions)
Upsert di un'entità nella tabella.
function upsertEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: OperationOptions): Promise<TableMergeEntityHeaders>
Parametri
- entity
-
TableEntity<T>
Proprietà per l'entità di tabella.
- mode
- UpdateMode
Le diverse modalità per l'aggiornamento dell'entità: - Merge: Aggiornamenti un'entità aggiornando le proprietà dell'entità senza sostituire l'entità esistente. - Sostituisci: Aggiornamenti un'entità esistente sostituendo l'intera entità.
- options
- OperationOptions
Parametri delle opzioni.
Esempio di upserting di un'entità
const { AzureNamedKeyCredential, TableClient } = require("@azure/data-tables")
const account = "<storage account name>";
const accountKey = "<account key>"
const tableName = "<table name>";
const sharedKeyCredential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(
`https://${account}.table.core.windows.net`,
`${tableName}`,
sharedKeyCredential
);
const entity = {partitionKey: "p1", rowKey: "r1", bar: "updatedBar"};
// Upsert uses update mode "Merge" as default.
// This behaves similarly to update but creates the entity
// if it doesn't exist in the service
await client.upsertEntity(entity)
// We can also set the update mode to Replace.
// This behaves similarly to update but creates the entity
// if it doesn't exist in the service
await client.upsertEntity(entity, "Replace")
Restituisce
Promise<TableMergeEntityHeaders>