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


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[])

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

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

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

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

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

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.

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

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)

Создает новый экземпляр класса 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:

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)

Создает экземпляр 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:

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)

Создает новый экземпляр класса 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:

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

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

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

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

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

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

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

createTable(OperationOptions)

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

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

Параметры

options
OperationOptions

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

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

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

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

Promise<void>

deleteEntity(string, string, DeleteTableEntityOptions)

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

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

Параметры

partitionKey

string

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

rowKey

string

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

options
DeleteTableEntityOptions

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

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

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

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

deleteTable(OperationOptions)

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

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

Параметры

options
OperationOptions

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

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

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

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

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

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

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

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

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

listEntities<T>(ListTableEntitiesOptions)

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

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

Параметры

options
ListTableEntitiesOptions

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

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

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

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

setAccessPolicy(SignedIdentifier[], OperationOptions)

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

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

Параметры

tableAcl

SignedIdentifier[]

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

options
OperationOptions

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

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

submitTransaction(TransactionAction[])

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

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

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

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

Параметры

actions

TransactionAction[]

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

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

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

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

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

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

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

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

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

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

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

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