销售电话: 1-800-867-1380

插入和更新实体

更新时间: 2014年8月

若要插入或更新实体,你需要在请求中包含一个指定实体属性和数据的 OData ATOM 或 OData JSON 实体。有关负载格式的详细信息,请参阅表服务操作的负载格式

插入实体操作插入具有唯一主键的新实体,主键由 PartitionKey 和 RowKey 组合而成。更新实体操作用相同的 PartitionKeyRowKey 替换现有实体。合并实体操作更新现有实体的属性,但不替换该实体。插入或合并实体操作创建具有唯一主键的新实体,或更新现有实体的属性,但不替换实体。插入或替换实体操作创建具有唯一主键的新实体,或替换现有实体。

用于插入或更新操作的 Atom 馈送通过指定实体名称和数据类型来定义实体的属性,并设置这些属性的值。

content 元素包含实体的属性定义,这些定义在 m:properties 元素中指定。属性类型由 m:type 特性指定。有关属性类型的详细信息,请参阅表服务操作的负载格式

下面是插入实体操作的 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="http://www.w3.org/2005/Atom">
  <title />
  <updated>2008-09-18T23:46:19.3857256Z<updated/>
  <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>
      <d:Timestamp m:type="Edm.DateTime">0001-01-01T00:00:00</d:Timestamp>
    </m:properties>
  </content>
</entry>

请注意,插入或更新操作的 Atom 馈送必须包括 updated 元素,它是一个时间戳元素,如 Atom 联合格式定义。updated 元素使用当前组合 UTC 时间以字符串形式指定。其格式如以下示例所示:

2009-03-18T04:25:03Z

有关构造 updated 元素和其他 DateTime 值的信息,请参阅 设置 DateTime 属性值格式

若要插入或更新使用 OData JSON 格式的实体,请使用属性名称(作为键)及其属性值创建一个 JSON 对象。如果无法通过启发式 OData JSON 类型检测推导出属性类型,则可能需要包含属性类型。有关启发式属性类型检测和 JSON OData 用法的信息,请参阅表服务操作的负载格式

与上面的 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"
}

另请参阅

本文是否对您有所帮助?
(1500 个剩余字符)
感谢您的反馈
Microsoft 正在进行一项网上调查,以了解您对 MSDN 网站的意见。 如果您选择参加,我们将会在您离开 MSDN 网站时向您显示该网上调查。

是否要参加?
显示:
© 2015 Microsoft