Partager via


TableClient class

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

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 son exécution 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 le tableName passé 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 d’une chaîne de connexion.

getAccessPolicy(OperationOptions)

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

getEntity<T>(string, string, GetTableEntityOptions)

Retourne une seule entité dans la table.

listEntities<T>(ListTableEntitiesOptions)

Interroge les 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 les signatures d’accès partagé.

submitTransaction(TransactionAction[])

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 génération de la transaction.

Exemple d’utilisation :

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

Exemple d’utilisation avec 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);
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

le nom de la table

credential
NamedKeyCredential

NamedKeyCredential utilisé pour authentifier les requêtes. Uniquement pris en charge pour Node

options
TableServiceClientOptions

Optionnel. Options pour configurer le pipeline HTTP.

Exemple utilisant un nom/une clé de compte :

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)

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

le nom de la table

credential
SASCredential

SASCredential utilisé pour authentifier les demandes

options
TableServiceClientOptions

Optionnel. Options pour configurer le pipeline HTTP.

Exemple d’utilisation d’un jeton SAS :

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)

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 signature d’accès partagé, par exemple «https://myaccount.table.core.windows.net?sasString" ; ».

tableName

string

le nom de la table

options
TableServiceClientOptions

Options pour configurer le pipeline HTTP.

Exemple d’ajout d’un jeton SAS :

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)

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

le nom de la table

credential
TokenCredential

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

options
TableServiceClientOptions

Optionnel. Options pour configurer le pipeline HTTP.

Exemple d’utilisation d’informations d’identification 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
);

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 son exécution 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é table.

options
OperationOptions

Paramètres d’options.

Exemple de création d’une 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!"});

Retours

createTable(OperationOptions)

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

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

Paramètres

options
OperationOptions

Paramètres d’options.

Exemple de création d’une table

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

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é

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

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

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

Retours

Promise<void>

fromConnectionString(string, string, TableServiceClientOptions)

Crée une instance de TableClient à partir d’une 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 -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemple de chaîne de connexion SAS - 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 pour configurer le 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 dans la table qui peuvent être utilisées avec les 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 seule entité 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é

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

Retours

listEntities<T>(ListTableEntitiesOptions)

Interroge les 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 de liste d’entités

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

Retours

setAccessPolicy(SignedIdentifier[], OperationOptions)

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

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

Paramètres

tableAcl

SignedIdentifier[]

Liste Access Control pour la table.

options
OperationOptions

Paramètres d’options.

Retours

submitTransaction(TransactionAction[])

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 génération de la transaction.

Exemple d’utilisation :

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

Exemple d’utilisation avec 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>

Paramètres

actions

TransactionAction[]

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

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 : Mises à jour une entité en mettant à jour les propriétés de l’entité sans remplacer l’entité existante. - Remplacer : Mises à jour une entité existante en remplaçant l’entité entière.

options
UpdateTableEntityOptions

Paramètres d’options.

Exemple de mise à jour d’une 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")

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é table.

mode
UpdateMode

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

options
OperationOptions

Paramètres d’options.

Exemple d’upserting d’une 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")

Retours