TableClient class
TableClient representa un cliente para el servicio Azure Tables, lo que le permite realizar operaciones en una sola tabla.
Constructores
Table |
Crea una nueva instancia de la clase TableClient. |
Table |
Crea una nueva instancia de la clase TableClient. |
Table |
Crea una instancia de TableClient. |
Table |
Crea una nueva instancia de la clase TableClient. |
Propiedades
pipeline | Representa una canalización para realizar una solicitud HTTP en una dirección URL. Las canalizaciones pueden tener varias directivas para administrar la manipulación de cada solicitud antes y después de que se realice en el servidor. |
table |
Nombre de la tabla en la que se van a realizar operaciones. |
url | Dirección URL de la cuenta de tabla |
Métodos
create |
Inserte la entidad en la tabla. |
create |
Crea una tabla con tableName pasado al constructor de cliente. |
delete |
Elimina la entidad especificada en la tabla. |
delete |
Elimina permanentemente la tabla actual con todas sus entidades. |
from |
Crea una instancia de TableClient a partir de la cadena de conexión. |
get |
Recupera detalles sobre las directivas de acceso almacenadas especificadas en la tabla que se pueden usar con firmas de acceso compartido. |
get |
Devuelve una sola entidad de la tabla. |
list |
Consulta las entidades de una tabla. |
set |
Establece directivas de acceso almacenadas para la tabla que se pueden usar con firmas de acceso compartido. |
submit |
Envía una transacción que se compone de un conjunto de acciones. Puede proporcionar las acciones como una lista o puede usar TableTransaction para ayudar a crear la transacción. Ejemplo de uso:
Ejemplo de uso con TableTransaction:
|
update |
Actualice una entidad en la tabla. |
upsert |
Upsert una entidad de la tabla. |
Detalles del constructor
TableClient(string, string, NamedKeyCredential, TableServiceClientOptions)
Crea una nueva instancia de la clase TableClient.
new TableClient(url: string, tableName: string, credential: NamedKeyCredential, options?: TableServiceClientOptions)
Parámetros
- url
-
string
Dirección URL de la cuenta de servicio que es el destino de la operación deseada, como "https://myaccount.table.core.windows.net".
- tableName
-
string
el nombre de la tabla
- credential
- NamedKeyCredential
NamedKeyCredential se usa para autenticar solicitudes. Solo se admite para Node
- options
- TableServiceClientOptions
Opcional. Opciones para configurar la canalización HTTP.
Ejemplo de uso de un nombre o clave de cuenta:
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)
Crea una nueva instancia de la clase TableClient.
new TableClient(url: string, tableName: string, credential: SASCredential, options?: TableServiceClientOptions)
Parámetros
- url
-
string
Dirección URL de la cuenta de servicio que es el destino de la operación deseada, como "https://myaccount.table.core.windows.net".
- tableName
-
string
el nombre de la tabla
- credential
- SASCredential
SASCredential usado para autenticar solicitudes
- options
- TableServiceClientOptions
Opcional. Opciones para configurar la canalización HTTP.
Ejemplo de uso de un token de 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)
Crea una instancia de TableClient.
new TableClient(url: string, tableName: string, options?: TableServiceClientOptions)
Parámetros
- url
-
string
Cadena de cliente que apunta a Table Service de Azure Storage, como "https://myaccount.table.core.windows.net". Puede anexar una SAS, como "https://myaccount.table.core.windows.net?sasString".
- tableName
-
string
el nombre de la tabla
- options
- TableServiceClientOptions
Opciones para configurar la canalización HTTP.
Ejemplo de anexión de un token de 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)
Crea una nueva instancia de la clase TableClient.
new TableClient(url: string, tableName: string, credential: TokenCredential, options?: TableServiceClientOptions)
Parámetros
- url
-
string
Dirección URL de la cuenta de servicio que es el destino de la operación deseada, como "https://myaccount.table.core.windows.net".
- tableName
-
string
el nombre de la tabla
- credential
- TokenCredential
Credencial de Azure Active Directory usada para autenticar solicitudes
- options
- TableServiceClientOptions
Opcional. Opciones para configurar la canalización HTTP.
Ejemplo de uso de una credencial de 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
);
Detalles de las propiedades
pipeline
Representa una canalización para realizar una solicitud HTTP en una dirección URL. Las canalizaciones pueden tener varias directivas para administrar la manipulación de cada solicitud antes y después de que se realice en el servidor.
pipeline: Pipeline
Valor de propiedad
tableName
Nombre de la tabla en la que se van a realizar operaciones.
tableName: string
Valor de propiedad
string
url
Dirección URL de la cuenta de tabla
url: string
Valor de propiedad
string
Detalles del método
createEntity<T>(TableEntity<T>, OperationOptions)
Inserte la entidad en la tabla.
function createEntity<T>(entity: TableEntity<T>, options?: OperationOptions): Promise<TableInsertEntityHeaders>
Parámetros
- entity
-
TableEntity<T>
Propiedades de la entidad de tabla.
- options
- OperationOptions
Parámetros de opciones.
Ejemplo de creación de una entidad
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!"});
Devoluciones
Promise<TableInsertEntityHeaders>
createTable(OperationOptions)
Crea una tabla con tableName pasado al constructor de cliente.
function createTable(options?: OperationOptions): Promise<void>
Parámetros
- options
- OperationOptions
Parámetros de opciones.
Ejemplo de creación de una tabla
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();
Devoluciones
Promise<void>
deleteEntity(string, string, DeleteTableEntityOptions)
Elimina la entidad especificada en la tabla.
function deleteEntity(partitionKey: string, rowKey: string, options?: DeleteTableEntityOptions): Promise<TableDeleteEntityHeaders>
Parámetros
- partitionKey
-
string
Clave de partición de la entidad.
- rowKey
-
string
Clave de fila de la entidad.
- options
- DeleteTableEntityOptions
Parámetros de opciones.
Ejemplo de eliminación de una entidad
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>")
Devoluciones
Promise<TableDeleteEntityHeaders>
deleteTable(OperationOptions)
Elimina permanentemente la tabla actual con todas sus entidades.
function deleteTable(options?: OperationOptions): Promise<void>
Parámetros
- options
- OperationOptions
Parámetros de opciones.
Ejemplo de eliminación de una tabla
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();
Devoluciones
Promise<void>
fromConnectionString(string, string, TableServiceClientOptions)
Crea una instancia de TableClient a partir de la cadena de conexión.
static function fromConnectionString(connectionString: string, tableName: string, options?: TableServiceClientOptions): TableClient
Parámetros
- connectionString
-
string
Cadena de conexión de la cuenta o una cadena de conexión saS de una cuenta de almacenamiento de Azure.
[ Nota: la cadena de conexión de la cuenta solo se puede usar en NODE.JS tiempo de ejecución. ] Ejemplo de cadena de conexión de cuenta:DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
Ejemplo de cadena de conexión de 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
Opciones para configurar la canalización HTTP.
Devoluciones
TableClient nuevo de la cadena de conexión especificada.
getAccessPolicy(OperationOptions)
Recupera detalles sobre las directivas de acceso almacenadas especificadas en la tabla que se pueden usar con firmas de acceso compartido.
function getAccessPolicy(options?: OperationOptions): Promise<GetAccessPolicyResponse>
Parámetros
- options
- OperationOptions
Parámetros de opciones.
Devoluciones
Promise<GetAccessPolicyResponse>
getEntity<T>(string, string, GetTableEntityOptions)
Devuelve una sola entidad de la tabla.
function getEntity<T>(partitionKey: string, rowKey: string, options?: GetTableEntityOptions): Promise<GetTableEntityResponse<TableEntityResult<T>>>
Parámetros
- partitionKey
-
string
Clave de partición de la entidad.
- rowKey
-
string
Clave de fila de la entidad.
- options
- GetTableEntityOptions
Parámetros de opciones.
Ejemplo de obtención de una entidad
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);
Devoluciones
Promise<GetTableEntityResponse<TableEntityResult<T>>>
listEntities<T>(ListTableEntitiesOptions)
Consulta las entidades de una tabla.
function listEntities<T>(options?: ListTableEntitiesOptions): PagedAsyncIterableIterator<TableEntityResult<T>, TableEntityResultPage<T>, PageSettings>
Parámetros
- options
- ListTableEntitiesOptions
Parámetros de opciones.
Ejemplo de enumeración de entidades
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);
}
Devoluciones
setAccessPolicy(SignedIdentifier[], OperationOptions)
Establece directivas de acceso almacenadas para la tabla que se pueden usar con firmas de acceso compartido.
function setAccessPolicy(tableAcl: SignedIdentifier[], options?: OperationOptions): Promise<TableSetAccessPolicyHeaders>
Parámetros
- tableAcl
Lista de Access Control de la tabla.
- options
- OperationOptions
Parámetros de opciones.
Devoluciones
Promise<TableSetAccessPolicyHeaders>
submitTransaction(TransactionAction[])
Envía una transacción que se compone de un conjunto de acciones. Puede proporcionar las acciones como una lista o puede usar TableTransaction para ayudar a crear la transacción.
Ejemplo de uso:
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);
Ejemplo de uso con 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>
Parámetros
- actions
tupla que contiene la acción que se va a realizar y la entidad con la que se va a realizar la acción
Devoluciones
Promise<TableTransactionResponse>
updateEntity<T>(TableEntity<T>, UpdateMode, UpdateTableEntityOptions)
Actualice una entidad en la tabla.
function updateEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: UpdateTableEntityOptions): Promise<TableUpdateEntityHeaders>
Parámetros
- entity
-
TableEntity<T>
Propiedades de la entidad que se va a actualizar.
- mode
- UpdateMode
Los distintos modos para actualizar la entidad: - Combinar: Novedades una entidad actualizando las propiedades de la entidad sin reemplazar la entidad existente. - Replace: Novedades una entidad existente reemplazando toda la entidad.
- options
- UpdateTableEntityOptions
Parámetros de opciones.
Ejemplo de actualización de una entidad
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")
Devoluciones
Promise<TableUpdateEntityHeaders>
upsertEntity<T>(TableEntity<T>, UpdateMode, OperationOptions)
Upsert una entidad de la tabla.
function upsertEntity<T>(entity: TableEntity<T>, mode?: UpdateMode, options?: OperationOptions): Promise<TableMergeEntityHeaders>
Parámetros
- entity
-
TableEntity<T>
Propiedades de la entidad de tabla.
- mode
- UpdateMode
Los distintos modos para actualizar la entidad: - Combinar: Novedades una entidad actualizando las propiedades de la entidad sin reemplazar la entidad existente. - Replace: Novedades una entidad existente reemplazando toda la entidad.
- options
- OperationOptions
Parámetros de opciones.
Ejemplo de aumento de una entidad
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")
Devoluciones
Promise<TableMergeEntityHeaders>