Partager via


TableClient class

Un TableClient représente un client au service Tables Azure, ce qui vous permet d’effectuer des opérations sur une table unique.

Constructeurs

TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

TableClient(string, string, SASCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

TableClient(string, string, TableServiceClientOptions)

Crée une instance de TableClient.

TableClient(string, string, TokenCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

Propriétés

pipeline

Représente un pipeline pour effectuer une requête HTTP vers une URL. Les pipelines peuvent avoir plusieurs stratégies pour gérer la manipulation de chaque requête avant et après sa création sur le serveur.

tableName

Nom de la table sur laquelle effectuer des opérations.

url

URL du compte de table

Méthodes

createEntity<T>(TableEntity<T>, OperationOptions)

Insérez une entité dans la table.

createTable(OperationOptions)

Crée une table avec tableName passée au constructeur client

deleteEntity(string, string, DeleteTableEntityOptions)

Supprime l’entité spécifiée dans la table.

deleteTable(OperationOptions)

Supprime définitivement la table active avec toutes ses entités.

fromConnectionString(string, string, TableServiceClientOptions)

Crée une instance de TableClient à partir de la chaîne de connexion.

getAccessPolicy(OperationOptions)

Récupère des détails sur les stratégies d’accès stockées spécifiées sur la table qui peuvent être utilisées avec des signatures d’accès partagé.

getEntity<T>(string, string, GetTableEntityOptions)

Retourne une entité unique dans la table.

listEntities<T>(ListTableEntitiesOptions)

Interroge des entités dans une table.

setAccessPolicy(SignedIdentifier[], OperationOptions)

Définit des stratégies d’accès stockées pour la table qui peuvent être utilisées avec des signatures d’accès partagé.

submitTransaction(TransactionAction[], OperationOptions)

Envoie une transaction composée d’un ensemble d’actions. Vous pouvez fournir les actions sous forme de liste ou vous pouvez utiliser TableTransaction pour faciliter la création de la transaction.

Exemple d’utilisation :

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient, TransactionAction } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const actions: TransactionAction[] = [
  ["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);

Exemple d’utilisation avec TableTransaction :

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient, TableTransaction } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const transaction = new TableTransaction();

// Call the available action in the TableTransaction object
transaction.createEntity({ partitionKey: "p1", rowKey: "1", data: "test1" });
transaction.deleteEntity("p1", "2");
transaction.updateEntity({ partitionKey: "p1", rowKey: "3", data: "newTest" }, "Merge");

// submitTransaction with the actions list on the transaction.
const result = await client.submitTransaction(transaction.actions);
updateEntity<T>(TableEntity<T>, UpdateMode, UpdateTableEntityOptions)

Mettez à jour une entité dans la table.

upsertEntity<T>(TableEntity<T>, UpdateMode, OperationOptions)

Upsert une entité dans la table.

Détails du constructeur

TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

new TableClient(url: string, tableName: string, credential: NamedKeyCredential, options?: TableServiceClientOptions)

Paramètres

url

string

URL du compte de service qui est la cible de l’opération souhaitée, telle que «https://myaccount.table.core.windows.net".

tableName

string

nom de la table

credential
NamedKeyCredential

NamedKeyCredential utilisé pour authentifier les demandes. Uniquement pris en charge pour node

options
TableServiceClientOptions

Optionnel. Options de configuration du pipeline HTTP.

Exemple utilisant un nom/clé de compte :

import { AzureNamedKeyCredential, TableClient } from "@azure/data-tables";

// Enter your storage account name and shared key
const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

// Use AzureNamedKeyCredential with storage account and account key
// AzureNamedKeyCredential is only available in Node.js runtime, not in browsers
const credential = new AzureNamedKeyCredential(account, accountKey);
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

TableClient(string, string, SASCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

new TableClient(url: string, tableName: string, credential: SASCredential, options?: TableServiceClientOptions)

Paramètres

url

string

URL du compte de service qui est la cible de l’opération souhaitée, telle que «https://myaccount.table.core.windows.net".

tableName

string

nom de la table

credential
SASCredential

SAPCredential utilisé pour authentifier les demandes

options
TableServiceClientOptions

Optionnel. Options de configuration du pipeline HTTP.

Exemple utilisant un jeton SAP :

import { TableClient, AzureSASCredential } from "@azure/data-tables";

const account = "<account name>";
const sas = "<service Shared Access Signature Token>";
const tableName = "<tableName>";

const clientWithSAS = new TableClient(
  `https://${account}.table.core.windows.net`,
  tableName,
  new AzureSASCredential(sas),
);

TableClient(string, string, TableServiceClientOptions)

Crée une instance de TableClient.

new TableClient(url: string, tableName: string, options?: TableServiceClientOptions)

Paramètres

url

string

Chaîne cliente pointant vers le service de table Stockage Azure, telle que «https://myaccount.table.core.windows.net". Vous pouvez ajouter une SAP, telle que «https://myaccount.table.core.windows.net?sasString".

tableName

string

nom de la table

options
TableServiceClientOptions

Options de configuration du pipeline HTTP.

Exemple d’ajout d’un jeton SAP :

import { TableClient } from "@azure/data-tables";

const account = "<account name>";
const sasToken = "<SAS token>";
const tableName = "<tableName>";

const clientWithSAS = new TableClient(
  `https://${account}.table.core.windows.net?${sasToken}`,
  tableName,
);

TableClient(string, string, TokenCredential, TableServiceClientOptions)

Crée une instance de la classe TableClient.

new TableClient(url: string, tableName: string, credential: TokenCredential, options?: TableServiceClientOptions)

Paramètres

url

string

URL du compte de service qui est la cible de l’opération souhaitée, telle que «https://myaccount.table.core.windows.net".

tableName

string

nom de la table

credential
TokenCredential

Informations d’identification Azure Active Directory utilisées pour authentifier les demandes

options
TableServiceClientOptions

Optionnel. Options de configuration du pipeline HTTP.

Exemple utilisant des informations d’identification Azure Active Directory :

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const credential = new DefaultAzureCredential();
const account = "<account name>";
const tableName = "<tableName>";

const clientWithAAD = new TableClient(
  `https://${account}.table.core.windows.net`,
  tableName,
  credential,
);

Détails de la propriété

pipeline

Représente un pipeline pour effectuer une requête HTTP vers une URL. Les pipelines peuvent avoir plusieurs stratégies pour gérer la manipulation de chaque requête avant et après sa création sur le serveur.

pipeline: Pipeline

Valeur de propriété

tableName

Nom de la table sur laquelle effectuer des opérations.

tableName: string

Valeur de propriété

string

url

URL du compte de table

url: string

Valeur de propriété

string

Détails de la méthode

createEntity<T>(TableEntity<T>, OperationOptions)

Insérez une entité dans la table.

function createEntity<T>(entity: TableEntity<T>, options?: OperationOptions): Promise<TableInsertEntityHeaders>

Paramètres

entity

TableEntity<T>

Propriétés de l’entité de table.

options
OperationOptions

Paramètres d’options.

Exemple de création d’une entité

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const testEntity = {
  partitionKey: "P1",
  rowKey: "R1",
  foo: "foo",
  bar: 123,
};
await client.createEntity(testEntity);

Retours

createTable(OperationOptions)

Crée une table avec tableName passée au constructeur client

function createTable(options?: OperationOptions): Promise<void>

Paramètres

options
OperationOptions

Paramètres d’options.

Exemple de création d’une table

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

// If the table 'newTable' already exists, createTable doesn't throw
await client.createTable();

Retours

Promise<void>

deleteEntity(string, string, DeleteTableEntityOptions)

Supprime l’entité spécifiée dans la table.

function deleteEntity(partitionKey: string, rowKey: string, options?: DeleteTableEntityOptions): Promise<TableDeleteEntityHeaders>

Paramètres

partitionKey

string

Clé de partition de l’entité.

rowKey

string

Clé de ligne de l’entité.

options
DeleteTableEntityOptions

Paramètres d’options.

Exemple de suppression d’une entité

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

// deleteEntity deletes the entity that matches exactly the partitionKey and rowKey
await client.deleteEntity("<partitionKey>", "<rowKey>");

Retours

deleteTable(OperationOptions)

Supprime définitivement la table active avec toutes ses entités.

function deleteTable(options?: OperationOptions): Promise<void>

Paramètres

options
OperationOptions

Paramètres d’options.

Exemple de suppression d’une table

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

await client.deleteTable();

Retours

Promise<void>

fromConnectionString(string, string, TableServiceClientOptions)

Crée une instance de TableClient à partir de la chaîne de connexion.

static function fromConnectionString(connectionString: string, tableName: string, options?: TableServiceClientOptions): TableClient

Paramètres

connectionString

string

Chaîne de connexion de compte ou chaîne de connexion SAP d’un compte de stockage Azure. [ Remarque : la chaîne de connexion de compte ne peut être utilisée que dans NODE.JS runtime. ] Exemple de chaîne de connexion de compte - exemple de chaîne de connexion SAS DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net - 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

Options de configuration du pipeline HTTP.

Retours

Nouveau TableClient à partir de la chaîne de connexion donnée.

getAccessPolicy(OperationOptions)

Récupère des détails sur les stratégies d’accès stockées spécifiées sur la table qui peuvent être utilisées avec des signatures d’accès partagé.

function getAccessPolicy(options?: OperationOptions): Promise<GetAccessPolicyResponse>

Paramètres

options
OperationOptions

Paramètres d’options.

Retours

getEntity<T>(string, string, GetTableEntityOptions)

Retourne une entité unique dans la table.

function getEntity<T>(partitionKey: string, rowKey: string, options?: GetTableEntityOptions): Promise<GetTableEntityResponse<TableEntityResult<T>>>

Paramètres

partitionKey

string

Clé de partition de l’entité.

rowKey

string

Clé de ligne de l’entité.

options
GetTableEntityOptions

Paramètres d’options.

Exemple d’obtention d’une entité

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const entity = await client.getEntity("<partitionKey>", "<rowKey>");
console.log(`Entity: PartitionKey: ${entity.partitionKey} RowKey: ${entity.rowKey}`);

Retours

listEntities<T>(ListTableEntitiesOptions)

Interroge des entités dans une table.

function listEntities<T>(options?: ListTableEntitiesOptions): PagedAsyncIterableIterator<TableEntityResult<T>, TableEntityResultPage<T>, PageSettings>

Paramètres

options
ListTableEntitiesOptions

Paramètres d’options.

Exemple d’énumération d’entités

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

let i = 0;
const entities = client.listEntities();
for await (const entity of entities) {
  console.log(`Entity${++i}: PartitionKey: ${entity.partitionKey} RowKey: ${entity.rowKey}`);
}

Retours

setAccessPolicy(SignedIdentifier[], OperationOptions)

Définit des stratégies d’accès stockées pour la table qui peuvent être utilisées avec des signatures d’accès partagé.

function setAccessPolicy(tableAcl: SignedIdentifier[], options?: OperationOptions): Promise<TableSetAccessPolicyHeaders>

Paramètres

tableAcl

SignedIdentifier[]

Liste de contrôle d’accès pour la table.

options
OperationOptions

Paramètres d’options.

Retours

submitTransaction(TransactionAction[], OperationOptions)

Envoie une transaction composée d’un ensemble d’actions. Vous pouvez fournir les actions sous forme de liste ou vous pouvez utiliser TableTransaction pour faciliter la création de la transaction.

Exemple d’utilisation :

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient, TransactionAction } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const actions: TransactionAction[] = [
  ["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);

Exemple d’utilisation avec TableTransaction :

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient, TableTransaction } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

const transaction = new TableTransaction();

// Call the available action in the TableTransaction object
transaction.createEntity({ partitionKey: "p1", rowKey: "1", data: "test1" });
transaction.deleteEntity("p1", "2");
transaction.updateEntity({ 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[], options?: OperationOptions): Promise<TableTransactionResponse>

Paramètres

actions

TransactionAction[]

tuple qui contient l’action à effectuer et l’entité avec laquelle effectuer l’action

options
OperationOptions

Options de la demande.

Retours

updateEntity<T>(TableEntity<T>, UpdateMode, UpdateTableEntityOptions)

Mettez à jour une entité dans la table.

function updateEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: UpdateTableEntityOptions): Promise<TableUpdateEntityHeaders>

Paramètres

entity

TableEntity<T>

Propriétés de l’entité à mettre à jour.

mode
UpdateMode

Les différents modes de mise à jour de l’entité : - Fusionner : met à jour une entité en mettant à jour les propriétés de l’entité sans remplacer l’entité existante. - Remplacer : met à jour une entité existante en remplaçant l’entité entière.

options
UpdateTableEntityOptions

Paramètres d’options.

Exemple de mise à jour d’une entité

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

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");

Retours

upsertEntity<T>(TableEntity<T>, UpdateMode, OperationOptions)

Upsert une entité dans la table.

function upsertEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: OperationOptions): Promise<TableMergeEntityHeaders>

Paramètres

entity

TableEntity<T>

Propriétés de l’entité de table.

mode
UpdateMode

Les différents modes de mise à jour de l’entité : - Fusionner : met à jour une entité en mettant à jour les propriétés de l’entité sans remplacer l’entité existante. - Remplacer : met à jour une entité existante en remplaçant l’entité entière.

options
OperationOptions

Paramètres d’options.

Exemple d’upserting d’une entité

import { DefaultAzureCredential } from "@azure/identity";
import { TableClient } from "@azure/data-tables";

const account = "<account>";
const accountKey = "<accountkey>";
const tableName = "<tableName>";

const credential = new DefaultAzureCredential();
const client = new TableClient(`https://${account}.table.core.windows.net`, tableName, credential);

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");

Retours