Azure 表存储更新使列为 Null

Posted

技术标签:

【中文标题】Azure 表存储更新使列为 Null【英文标题】:Azure Table Storage Update making columns as Null 【发布时间】:2020-11-16 10:52:34 【问题描述】:

我正在使用 Azure Table Storage Rest Api 来更新实体。 如果实体有 5 列(col1,col2,col3,col4,col5)并且我正在制作一个 PUT 请求正文,如下所示。

"col1":"value"

其余列的值设置为 NULL。

有办法避免吗?

【问题讨论】:

【参考方案1】:

您看到此行为的原因是因为您正在执行Update Entity 操作,该操作将替换整个实体。

如果您只对更改一个属性(属性)感兴趣,则需要使用Merge Entity 操作,该操作通过更新实体的属性来更新现有实体。它不会替换现有实体。

只需将您的 HTTP 请求方法从 PUT 更改为 MERGE 就可以了。

【讨论】:

我在 HTTPMETHOD 中看不到 Merge 属性。 :(

以上是关于Azure 表存储更新使列为 Null的主要内容,如果未能解决你的问题,请参考以下文章

使用 Azure 地理冗余 (RA-GRS) 表存储时,如何更新 ASP.NET Core 中的 TableServiceClient 以指向次要区域?

将值、NULL 或不更新此列传递给 Oracle 表更新存储过程?

org.hibernate.exception.ConstraintViolationException:无法更新 - DB 中的自动增量列为 NULL

查找对 Azure 存储表的删除实体调用

Azure 表存储乐观并发处理?

当 Spring Boot 中的某些列为空时,@LastModifiedDate 不会更新