插入和更新實體
若要插入或更新實體,請與要求一個 OData
ATOM 或 OData
JSON 實體一起包含,該實體會指定實體的屬性和資料。 如需承載格式的詳細資訊,請參閱 Azure 資料表儲存體作業的承載格式。
插入實體作業會插入具有唯一主鍵的新實體,此實體是由資料分割索引鍵和資料列索引鍵的組合所組成。
更新實體作業會將現有的實體取代為相同的 PartitionKey
和 RowKey
。
合併實體作業會更新現有實體的屬性,但不會取代實體。
插入或合併實體作業會建立具有唯一主鍵的新實體,或更新現有實體的屬性,但不會取代實體。 插入或取代實體作業會建立具有唯一主鍵的新實體,或取代現有的實體。
建構 Atom 摘要
插入或更新作業的 Atom 摘要,會藉由指定屬性名稱和資料類型,定義實體的屬性,並且設定那些屬性的值。
content
元素包含實體的屬性定義 (指定於 m:properties
元素中)。 屬性 (property) 的類型是以 m:type
屬性 (attribute) 指定。 如需屬性類型的詳細資訊,請參閱 資料表儲存體作業的承載格式。
以下是 插入實體 作業的 Atom 摘要範例:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="https://www.w3.org/2005/Atom">
<title />
<author>
<name />
</author>
<id />
<content type="application/xml">
<m:properties>
<d:Address>Mountain View</d:Address>
<d:Age m:type="Edm.Int32">23</d:Age>
<d:AmountDue m:type="Edm.Double">200.23</d:AmountDue>
<d:BinaryData m:type="Edm.Binary" m:null="true" />
<d:CustomerCode m:type="Edm.Guid">c9da6455-213d-42c9-9a79-3e9149a57833</d:CustomerCode>
<d:CustomerSince m:type="Edm.DateTime">2008-07-10T00:00:00</d:CustomerSince>
<d:IsActive m:type="Edm.Boolean">true</d:IsActive>
<d:NumOfOrders m:type="Edm.Int64">255</d:NumOfOrders>
<d:PartitionKey>mypartitionkey</d:PartitionKey>
<d:RowKey>myrowkey1</d:RowKey>
</m:properties>
</content>
</entry>
注意
只有 2015-12-11 之前的版本才支援 Atom 承載。 從 2015-12-11 版開始,承載必須採用 JSON。
建構 JSON 摘要
若要使用 OData
JSON 格式插入或更新實體,請建立具有屬性名稱作為索引鍵的 JSON 物件,以及其屬性值。 如果無法透過 OData
JSON 類型偵測啟發學習法推斷屬性類型,您可能需要包含屬性類型。
對應至上述 Atom 範例的 JSON 承載如下所示:
{
"Address":"Mountain View",
"Age":23,
"AmountDue":200.23,
"CustomerCode@odata.type":"Edm.Guid",
"CustomerCode":"c9da6455-213d-42c9-9a79-3e9149a57833",
"CustomerSince@odata.type":"Edm.DateTime",
"CustomerSince":"2008-07-10T00:00:00",
"IsActive":true,
"NumOfOrders@odata.type":"Edm.Int64",
"NumOfOrders":"255",
"PartitionKey":"mypartitionkey",
"RowKey":"myrowkey"
}