Exportar (0) Imprimir
Expandir Tudo

Mesclar entidade

Atualizado: abril de 2015

A operação Merge Entity atualiza uma entidade existente atualizando as propriedades da entidade. Essa operação não substitui a entidade existente, como faz a operação Atualizar entidade.

A solicitação Merge Entity pode ser criada da seguinte maneira. HTTPS é recomendado. Substitua myaccount pelo nome da conta de armazenamento, mytable pelo nome da tabela e myPartitionKey e myRowKey pelo nome da chave de partição e da chave de linha que identificam a entidade a ser atualizada:

 

Método URI de solicitação Versão de HTTP

MERGE

https://myaccount.table.core.windows.net/mytable(PartitionKey='myPartitionKey', RowKey='myRowKey')

HTTP/1.1

O endereço da entidade a ser atualizada pode usar vários formulários no URI da solicitação. Consulte o Protocolo OData para saber mais detalhes.

Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome de host do emulador e a porta do serviço Tabela como 127.0.0.1:10002, seguido pelo nome da conta de armazenamento emulado:

 

Método URI de solicitação Versão de HTTP

MERGE

http://127.0.0.1:10002/devstoreaccount1/mytable(PartitionKey='myPartitionKey', RowKey='myRowKey')

HTTP/1.1

O serviço Tabela no emulador de armazenamento difere de muitas maneiras do serviço Tabela do Windows® Azure™. Para obter mais informações, consulte Differences between Development Storage and Cloud Storage Services.

Nenhuma.

A tabela a seguir descreve os cabeçalhos de solicitação obrigatórios e opcionais.

 

Cabeçalho de solicitação Descrição

Authorization

Obrigatória. Especifica o esquema de autenticação, o nome da conta e a assinatura. Para obter mais informações, consulte Autenticação federada para os Serviços de Armazenamento do Azure.

Date ou x-ms-date

Obrigatória. Especifica o Tempo Universal Coordenado (UTC) para a solicitação. Para obter mais informações, consulte Autenticação federada para os Serviços de Armazenamento do Azure.

x-ms-version

Opcional. Especifica a versão da operação a ser usada para esta solicitação. Para obter mais informações, consulte Controle de versão dos serviços Blob, Fila e Tabela no Windows Azure.

Content-Type

Obrigatória. Especifica o tipo de conteúdo da carga. Os valores possíveis são application/atom+xml e application/json.

Para obter mais informações sobre tipos de conteúdo válidos, consulte Formato de carga para operações do serviço Tabela.

Content-Length

Obrigatória. O comprimento do corpo da solicitação.

If-Match

Obrigatória. O cliente pode especificar a ETag da entidade na solicitação para compará-la à ETag mantida pelo serviço para efeitos de simultaneidade otimista. A operação de atualização será executada somente se a ETag enviada pelo cliente corresponder ao valor mantido pelo servidor, indicando que a entidade não foi modificada desde que foi recuperada pelo cliente.

Para forçar uma atualização incondicional, defina If-Match como o caractere curinga (*).

x-ms-client-request-id

Opcional. Fornece um valor opaco, gerado pelo cliente, com um limite de caractere de 1 KB que é registrado nos logs analíticos quando o log analítico de armazenamento está habilitado. É altamente recomendável usar este cabeçalho para correlacionar atividades do cliente com solicitações recebidas pelo servidor. Para obter mais informações, consulte Sobre o registro em log da Análise de Armazenamento e Log do Azure: Usando logs para rastrear solicitações de armazenamento.

A operação Merge Entity envia a entidade a ser atualizada como uma entidade OData, que pode ser um feed Atom ou JSON. Para obter mais informações, consulte Inserção e atualização de entidades.

A resposta inclui um código de status HTTP e um conjunto de cabeçalhos de resposta.

Uma operação bem-sucedida retorna o código de status 204 (Sem conteúdo).

Para obter mais informações sobre códigos de status, consulte Status e códigos de erro e Códigos de erro do serviço Tabela.

A resposta para esta operação inclui os cabeçalhos a seguir. A resposta também pode incluir cabeçalhos padrão HTTP adicionais. Todos os cabeçalhos padrão obedecem à especificação de protocolo HTTP/1.1.

 

Cabeçalho de resposta Descrição

ETag

A ETag da entidade.

x-ms-request-id

Esse cabeçalho identifica a solicitação que foi feita de forma exclusiva e pode ser usado para solucionar problemas na solicitação. Para obter mais informações, consulte Solucionando problemas de operações de API.

x-ms-version

Indica a versão do serviço Tabela usado para executar a solicitação. Esse cabeçalho é retornado para solicitações feitas na versão 2009-09-19 e mais recente.

Date

Um valor de data/hora UTC gerado pelo serviço que indica a hora em que a resposta foi iniciada.

Response Status:
HTTP/1.1 204 No Content

Response Headers:
Connection: Keep-Alive
Content-Length: 0
Cache-Control: no-cache
Date: Mon, 25 Nov 2013 19:06:47 GMT
ETag: W/"0x5B168C7B6E589D2"
x-ms-version: 2013-08-15
DataServiceVersion: 1.0;NetFx
MaxDataServiceVersion: 2.0;NetFx
Server: Windows-Azure-Table/1.0 Microsoft-HTTPAPI/2.0

Essa operação poderá ser executada pelo proprietário da conta e por qualquer pessoa com uma assinatura de acesso compartilhado que tenha permissão para executar essa operação.

Todas as propriedades com valores nulo são ignoradas pela operação Merge Entity. Todas as outras propriedades serão atualizadas.

Uma propriedade não pode ser removida com uma operação Merge Entity. Para remover uma propriedade de uma entidade, substitua a entidade chamando a operação Atualizar entidade.

Ao mesclar uma entidade, você deve especificar as propriedades do sistema PartitionKey e RowKey como parte da operação de mesclagem.

A ETag de uma entidade fornece a simultaneidade otimista padrão para operações de mesclagem. O valor de ETag é opaco e não deve ser lido nem confiável. Antes que uma operação de mesclagem ocorra, o serviço Tabela verifica se o valor atual de ETag da entidade é idêntico ao valor de ETag incluído na solicitação no cabeçalho If-Match. Se os valores forem idênticos e o serviço Tabela determinar que a entidade não foi alterada desde a recuperação, a operação de mesclagem continuará.

Se a ETag da entidade for diferente do especificado com a solicitação de mesclagem, ocorrerá uma falha na operação de mesclagem com o código de status 412 (Falha no Pré-requisito). Esse erro indica que a entidade foi alterada no servidor desde a recuperação. Para resolver esse erro, recupere novamente a entidade e reedite a solicitação.

Para forçar uma operação de mesclagem incondicional, defina o valor do cabeçalho If-Match como o caractere curinga (*) na solicitação. A transmissão desse valor para a operação substituirá a simultaneidade otimista padrão e ignorará todas a incompatibilidade em valores de ETag.

Se o cabeçalho If-Match estiver ausente da solicitação, o serviço retornará o código de status 400 (Solicitação Incorreta). Uma solicitação incorreta de outras formas também poderá retornar o código 400; para obter mais informações, consulte Códigos de erro do serviço Tabela.

Qualquer aplicativo que pode autenticar e enviar uma solicitação HTTP MERGE pode mesclar uma entidade. Para obter mais informações sobre a criação de uma consulta usando MERGE HTTP, consulte Como: Adicionar, modificar e excluir entidades.

Para obter mais informações sobre a execução de operações de mesclagem em lotes, consulte Executando transações do grupo de entidades.

Consulte também

Mostrar:
© 2015 Microsoft