Поделиться через


TableClient class

TableClient представляет клиент в службу таблиц Azure, которая позволяет выполнять операции с одной таблицей.

Конструкторы

TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)

Создает новый экземпляр класса TableClient.

TableClient(string, string, SASCredential, TableServiceClientOptions)

Создает новый экземпляр класса TableClient.

TableClient(string, string, TableServiceClientOptions)

Создает экземпляр TableClient.

TableClient(string, string, TokenCredential, TableServiceClientOptions)

Создает новый экземпляр класса TableClient.

Свойства

pipeline

Представляет конвейер для создания HTTP-запроса к URL-адресу. Конвейеры могут иметь несколько политик для управления обработкой каждого запроса до и после его выполнения на сервере.

tableName

Имя таблицы для выполнения операций.

url

URL-адрес учетной записи таблицы

Методы

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

Вставка сущности в таблицу.

createTable(OperationOptions)

Создает таблицу с именем таблицы, переданной конструктору клиента.

deleteEntity(string, string, DeleteTableEntityOptions)

Удаляет указанную сущность в таблице.

deleteTable(OperationOptions)

Окончательно удаляет текущую таблицу со всеми его сущностями.

fromConnectionString(string, string, TableServiceClientOptions)

Создает экземпляр TableClient из строки подключения.

getAccessPolicy(OperationOptions)

Извлекает сведения о любых хранимых политиках доступа, указанных в таблице, которая может использоваться с подписанными URL-адресами.

getEntity<T>(string, string, GetTableEntityOptions)

Возвращает одну сущность в таблице.

listEntities<T>(ListTableEntitiesOptions)

Запрашивает сущности в таблице.

setAccessPolicy(SignedIdentifier[], OperationOptions)

Задает хранимые политики доступа для таблицы, которая может использоваться с подписанными URL-адресами.

submitTransaction(TransactionAction[], OperationOptions)

Отправляет транзакцию, состоящую из набора действий. Вы можете предоставить действия в виде списка или использовать TableTransaction для создания транзакции.

Пример использования:

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

Пример использования с 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)

Обновите сущность в таблице.

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

Upsert сущность в таблице.

Сведения о конструкторе

TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)

Создает новый экземпляр класса TableClient.

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

Параметры

url

string

URL-адрес учетной записи службы, являющейся целью требуемой операции, например "https://myaccount.table.core.windows.net".

tableName

string

имя таблицы

credential
NamedKeyCredential

ИменованныйKeyCredential, используемый для проверки подлинности запросов. Поддерживается только для узла

options
TableServiceClientOptions

Необязательный. Параметры настройки конвейера HTTP.

Пример использования имени или ключа учетной записи:

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)

Создает новый экземпляр класса TableClient.

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

Параметры

url

string

URL-адрес учетной записи службы, являющейся целью требуемой операции, например "https://myaccount.table.core.windows.net".

tableName

string

имя таблицы

credential
SASCredential

SASCredential, используемый для проверки подлинности запросов

options
TableServiceClientOptions

Необязательный. Параметры настройки конвейера HTTP.

Пример использования маркера SAS:

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)

Создает экземпляр TableClient.

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

Параметры

url

string

Строка клиента, указывающая на службу таблиц службы хранилища Azure, например "https://myaccount.table.core.windows.net". Можно добавить SAS, например "https://myaccount.table.core.windows.net?sasString".

tableName

string

имя таблицы

options
TableServiceClientOptions

Параметры настройки конвейера HTTP.

Пример добавления маркера SAS:

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)

Создает новый экземпляр класса TableClient.

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

Параметры

url

string

URL-адрес учетной записи службы, являющейся целью требуемой операции, например "https://myaccount.table.core.windows.net".

tableName

string

имя таблицы

credential
TokenCredential

Учетные данные Azure Active Directory, используемые для проверки подлинности запросов

options
TableServiceClientOptions

Необязательный. Параметры настройки конвейера HTTP.

Пример использования учетных данных 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,
);

Сведения о свойстве

pipeline

Представляет конвейер для создания HTTP-запроса к URL-адресу. Конвейеры могут иметь несколько политик для управления обработкой каждого запроса до и после его выполнения на сервере.

pipeline: Pipeline

Значение свойства

tableName

Имя таблицы для выполнения операций.

tableName: string

Значение свойства

string

url

URL-адрес учетной записи таблицы

url: string

Значение свойства

string

Сведения о методе

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

Вставка сущности в таблицу.

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

Параметры

entity

TableEntity<T>

Свойства для сущности таблицы.

options
OperationOptions

Параметры параметров.

Пример создания сущности

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

Возвращаемое значение

createTable(OperationOptions)

Создает таблицу с именем таблицы, переданной конструктору клиента.

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

Параметры

options
OperationOptions

Параметры параметров.

Пример создания таблицы

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

Возвращаемое значение

Promise<void>

deleteEntity(string, string, DeleteTableEntityOptions)

Удаляет указанную сущность в таблице.

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

Параметры

partitionKey

string

Ключ секции сущности.

rowKey

string

Ключ строки сущности.

options
DeleteTableEntityOptions

Параметры параметров.

Пример удаления сущности

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

Возвращаемое значение

deleteTable(OperationOptions)

Окончательно удаляет текущую таблицу со всеми его сущностями.

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

Параметры

options
OperationOptions

Параметры параметров.

Пример удаления таблицы

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

Возвращаемое значение

Promise<void>

fromConnectionString(string, string, TableServiceClientOptions)

Создает экземпляр TableClient из строки подключения.

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

Параметры

connectionString

string

Строка подключения учетной записи или строка подключения SAS учетной записи хранения Azure. [ Примечание. Строка подключения учетной записи может использоваться только в среде выполнения NODE.JS. ] Пример строки подключения учетной записи — пример строки подключения SAS DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.netBlobEndpoint=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

Параметры настройки конвейера HTTP.

Возвращаемое значение

Новый TableClient из заданной строки подключения.

getAccessPolicy(OperationOptions)

Извлекает сведения о любых хранимых политиках доступа, указанных в таблице, которая может использоваться с подписанными URL-адресами.

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

Параметры

options
OperationOptions

Параметры параметров.

Возвращаемое значение

getEntity<T>(string, string, GetTableEntityOptions)

Возвращает одну сущность в таблице.

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

Параметры

partitionKey

string

Ключ секции сущности.

rowKey

string

Ключ строки сущности.

options
GetTableEntityOptions

Параметры параметров.

Пример получения сущности

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

Возвращаемое значение

listEntities<T>(ListTableEntitiesOptions)

Запрашивает сущности в таблице.

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

Параметры

options
ListTableEntitiesOptions

Параметры параметров.

Примеры перечисления сущностей

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

Возвращаемое значение

setAccessPolicy(SignedIdentifier[], OperationOptions)

Задает хранимые политики доступа для таблицы, которая может использоваться с подписанными URL-адресами.

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

Параметры

tableAcl

SignedIdentifier[]

Список управления доступом для таблицы.

options
OperationOptions

Параметры параметров.

Возвращаемое значение

submitTransaction(TransactionAction[], OperationOptions)

Отправляет транзакцию, состоящую из набора действий. Вы можете предоставить действия в виде списка или использовать TableTransaction для создания транзакции.

Пример использования:

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

Пример использования с 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>

Параметры

actions

TransactionAction[]

кортеж, содержащий действие для выполнения, и сущность для выполнения действия с

options
OperationOptions

Варианты запроса.

Возвращаемое значение

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

Обновите сущность в таблице.

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

Параметры

entity

TableEntity<T>

Свойства сущности, которые необходимо обновить.

mode
UpdateMode

Различные режимы обновления сущности: слияние: обновляет сущность путем обновления свойств сущности без замены существующей сущности. — Замена: обновляет существующую сущность, заменив всю сущность.

options
UpdateTableEntityOptions

Параметры параметров.

Пример обновления сущности

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

Возвращаемое значение

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

Upsert сущность в таблице.

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

Параметры

entity

TableEntity<T>

Свойства для сущности таблицы.

mode
UpdateMode

Различные режимы обновления сущности: слияние: обновляет сущность путем обновления свойств сущности без замены существующей сущности. — Замена: обновляет существующую сущность, заменив всю сущность.

options
OperationOptions

Параметры параметров.

Пример переверения сущности

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

Возвращаемое значение