插入和更新實體

若要插入或更新實體,請與要求一個 OData ATOM 或 OData JSON 實體一起包含,該實體會指定實體的屬性和資料。 如需承載格式的詳細資訊,請參閱 Azure 資料表儲存體作業的承載格式

插入實體作業會插入具有唯一主鍵的新實體,此實體是由資料分割索引鍵和資料列索引鍵的組合所組成。 更新實體作業會將現有的實體取代為相同的 PartitionKeyRowKey合併實體作業會更新現有實體的屬性,但不會取代實體。

插入或合併實體作業會建立具有唯一主鍵的新實體,或更新現有實體的屬性,但不會取代實體。 插入或取代實體作業會建立具有唯一主鍵的新實體,或取代現有的實體。

建構 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"  
}  
  

另請參閱

資料表儲存體概念
實體上的作業