TableClient class
TableClient представляет клиент для службы таблиц Azure, что позволяет выполнять операции с одной таблицей.
Конструкторы
Table |
Создает новый экземпляр класса TableClient. |
Table |
Создает новый экземпляр класса TableClient. |
Table |
Создает экземпляр TableClient. |
Table |
Создает новый экземпляр класса TableClient. |
Свойства
pipeline | Представляет конвейер для выполнения HTTP-запроса к URL-адресу. Конвейеры могут иметь несколько политик для управления обработкой каждого запроса до и после его отправки на сервер. |
table |
Имя таблицы для выполнения операций. |
url | URL-адрес учетной записи таблицы |
Методы
create |
Вставка сущности в таблицу. |
create |
Создает таблицу с tableName, передаваемой в конструктор клиента |
delete |
Удаляет указанную сущность в таблице. |
delete |
Безвозвратно удаляет текущую таблицу со всеми ее сущностями. |
from |
Создает экземпляр TableClient из строки подключения. |
get |
Извлекает сведения о всех хранимых политиках доступа, указанных в таблице, которые могут использоваться с подписанными URL-адресами. |
get |
Возвращает одну сущность в таблице. |
list |
Запрашивает сущности в таблице. |
set |
Задает хранимые политики доступа для таблицы, которые могут использоваться с подписанными URL-адресами. |
submit |
Отправляет транзакцию, состоящую из набора действий. Действия можно указать в виде списка или использовать TableTransaction для создания транзакции. Пример использования:
Пример использования с TableTransaction:
|
update |
Обновление сущности в таблице. |
upsert |
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
NamedKeyCredential, используемый для проверки подлинности запросов. Поддерживается только для Node
- 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!"});
Возвращаемое значение
Promise<TableInsertEntityHeaders>
createTable(OperationOptions)
Создает таблицу с tableName, передаваемой в конструктор клиента
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>")
Возвращаемое значение
Promise<TableDeleteEntityHeaders>
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 среде выполнения. ] Пример строки подключения учетной записи —DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
Пример строки подключения 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
Параметры для настройки конвейера HTTP.
Возвращаемое значение
Новый tableClient из заданной строки подключения.
getAccessPolicy(OperationOptions)
Извлекает сведения о всех хранимых политиках доступа, указанных в таблице, которые могут использоваться с подписанными URL-адресами.
function getAccessPolicy(options?: OperationOptions): Promise<GetAccessPolicyResponse>
Параметры
- options
- OperationOptions
Параметры параметров.
Возвращаемое значение
Promise<GetAccessPolicyResponse>
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);
Возвращаемое значение
Promise<GetTableEntityResponse<TableEntityResult<T>>>
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
Список контроль доступа для таблицы.
- options
- OperationOptions
Параметры параметров.
Возвращаемое значение
Promise<TableSetAccessPolicyHeaders>
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
кортеж, содержащий действие, которое необходимо выполнить, и сущность для выполнения действия с
Возвращаемое значение
Promise<TableTransactionResponse>
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")
Возвращаемое значение
Promise<TableUpdateEntityHeaders>
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
Параметры параметров.
Пример upserting сущности
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")
Возвращаемое значение
Promise<TableMergeEntityHeaders>