Varlık Ekle
İşlem, Insert Entity
tabloya yeni bir varlık ekler.
İstek
İsteği aşağıdaki gibi oluşturabilirsiniz Insert Entity
. HTTPS önerilir.
myaccount değerini depolama hesabınızın adıyla, mytable değerini ise tablonuzun adıyla değiştirin.
Yöntem | İstek URI'si | HTTP sürümü |
---|---|---|
POST |
https://myaccount.table.core.windows.net/mytable |
HTTP/1.1 |
Öykünmüş depolama hizmeti URI'si
Öykünülen depolama hizmetine yönelik bir istekte bulunurken öykünücü konak adını ve Azure Tablo Depolama bağlantı noktasını olarak 127.0.0.1:10002
ve ardından öykünülen depolama hesabı adını belirtin.
Yöntem | İstek URI'si | HTTP sürümü |
---|---|---|
POST |
http://127.0.0.1:10002/devstoreaccount1/mytable |
HTTP/1.1 |
Depolama öykünücüsü içindeki Tablo Depolama, Azure Tablo Depolama'dan çeşitli yollarla farklıdır. Daha fazla bilgi için bkz . Depolama öykünücüsü ile Azure Depolama hizmetleri arasındaki farklar.
URI parametreleri
İstek URI'sinde aşağıdaki ek parametreleri belirtebilirsiniz.
Parametre | Açıklama |
---|---|
timeout |
İsteğe bağlı.
timeout parametresi saniye cinsinden ifade edilir. Daha fazla bilgi için bkz . Tablo Depolama işlemleri için zaman aşımlarını ayarlama. |
İstek üst bilgileri
Aşağıdaki tabloda gerekli ve isteğe bağlı istek üst bilgileri açıklanmaktadır.
İstek üst bilgisi | Açıklama |
---|---|
Authorization |
Gereklidir. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. Azure Depolama isteklerini yetkilendirme. |
Date veya x-ms-date |
Gereklidir. İstek için Eşgüdümlü Evrensel Saat (UTC) biçimini belirtir. Daha fazla bilgi için bkz. Azure Depolama isteklerini yetkilendirme. |
x-ms-version |
İsteğe bağlı. Bu istek için kullanılacak işlemin sürümünü belirtir. Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma. |
Content-Type |
Gereklidir. Yükün içerik türünü belirtir. Olası değerler şunlardır (yalnızca 2015-12-11 öncesi sürümler application/atom+xml ) ve application/json .Geçerli içerik türleri hakkında daha fazla oluşum için bkz. Tablo Depolama işlemleri için Yük biçimi. |
Content-Length |
Gereklidir. İstek gövdesinin uzunluğu. |
Accept |
İsteğe bağlı. Yanıt yükünün kabul edilen içerik türünü belirtir. Olası değerler şunlardır: - application/atom+xml (yalnızca 2015-12-11 öncesi sürümler)- application/json;odata=nometadata - application/json;odata=minimalmetadata - application/json;odata=fullmetadata Daha fazla bilgi için bkz. Tablo Depolama işlemleri için Yük biçimi. |
Prefer |
İsteğe bağlı. Yanıtın yüke eklenen varlığı ekleyip eklemeyeceğini belirtir. Olası değerler ve return-content değerleridirreturn-no-content . Daha fazla bilgi için bkz. Ekleme işlemlerinde yanıt yankısını yönetmek için Tercih et üst bilgisini ayarlama. |
x-ms-client-request-id |
İsteğe bağlı. Günlüğe kaydetme yapılandırıldığında günlüklere kaydedilen 1 kibibaytlık (KiB) karakter sınırıyla istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinlikleriyle sunucunun aldığı istekler arasında bağıntı sağlamak için bu üst bilgiyi kullanmanızı kesinlikle öneririz. Daha fazla bilgi için bkz. Azure Tablo Depolama'yı izleme. |
İstek gövdesi
İşlem Insert Entity
, JSON veya Atom akışı olan bir OData
varlık olarak eklenecek varlığı gönderir. Daha fazla bilgi için bkz. Varlık ekleme ve güncelleştirme.
Not
JSON önerilen yük biçimidir ve sürüm 2015-12-11 ve üzeri için desteklenen tek biçimdir.
JSON (sürüm 2013-08-15 ve üzeri)
İşlem için örnek bir JSON istek gövdesi aşağıda verilmiştır Insert Entity
:
{
"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,
"NumberOfOrders@odata.type":"Edm.Int64",
"NumberOfOrders":"255",
"PartitionKey":"mypartitionkey",
"RowKey":"myrowkey"
}
Atom akışı (2015-12-11 öncesi sürümler)
Burada işlem için örnek bir Atom isteği gövdesi verilmiş.Insert Entity
<?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 />
<updated>2013-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>
</m:properties>
</content>
</entry>
Yanıt
Yanıt bir HTTP durum kodu, yanıt üst bilgileri kümesi ve yanıt gövdesi içerir.
Durum kodu
Durum kodu, üst bilginin değerine Prefer
bağlıdır.
Prefer
Üst bilgi olarak ayarlanırsa return-no-content
başarılı bir işlem 204 (No Content
durum kodu) döndürür.
Prefer
Üst bilgi belirtilmemişse veya olarak ayarlanmışsa return-content
başarılı bir işlem 201 (Created
durum kodu) döndürür. Daha fazla bilgi için bkz. Ekleme işlemlerinde yanıt yankısını yönetmek için Tercih et üst bilgisini ayarlama.
Durum kodları hakkında bilgi için bkz . Durum ve hata kodları ile Tablo Hizmeti Hata Kodları.
Yanıt üst bilgileri
Yanıt aşağıdaki üst bilgileri içerir. Yanıt ek, standart HTTP üst bilgileri de içerebilir. Tüm standart üst bilgiler HTTP/1.1 protokol belirtimine uygundur.
Yanıt üst bilgisi | Description |
---|---|
x-ms-request-id |
Yapılan isteği benzersiz olarak tanımlar ve istekle ilgili sorunları gidermek için kullanılabilir. Daha fazla bilgi için bkz. API işlemleriyle ilgili sorunları giderme. |
x-ms-version |
İsteği çalıştırmak için kullanılan Tablo Depolama sürümünü gösterir. Bu üst bilgi, 2009-09-19 ve sonraki sürümlerde yapılan istekler için döndürülür. |
Date |
Yanıtın başlatıldığı saati gösteren utc tarih/saat değeri. Hizmet bu değeri oluşturur. |
ETag |
ETag Varlığın için. |
Preference-Applied |
İstek üst bilgisinin Prefer kabul edilip edilmediğini gösterir. Yanıt bu üst bilgiyi içermiyorsa üst Prefer bilgi kabul edilmez. Bu üst bilgi döndürülürse, değeri veya return-no-content olurreturn-content .Daha fazla bilgi için bkz. Ekleme işlemlerinde yanıt yankısını yönetmek için Tercih et üst bilgisini ayarlama. |
Content-Type |
Yükün içerik türünü gösterir. Değer, istek üst bilgisi için belirtilen değere Accept bağlıdır. Olası değerler şunlardır:- application/atom+xml - application/json;odata=nometadata - application/json;odata=minimalmetadata - application/json;odata=fullmetadata İçerik türleri hakkında daha fazla bilgi için bkz. Tablo Depolama işlemleri için Yük biçimi. |
x-ms-client-request-id |
İsteklerin ve karşılık gelen yanıtların sorunlarını gidermek için kullanılabilir. Bu üst bilginin değeri, istekte varsa üst bilginin değerine x-ms-client-request-id eşittir. Değer en fazla 1.024 görünür ASCII karakterdir.
x-ms-client-request-id Üst bilgi istekte yoksa yanıtta bulunmaz. |
Yanıt gövdesi
İstek üst bilgisini değeriyle return-no-content
içeriyorsaPrefer
, yanıt gövdesi döndürülmedi. Aksi takdirde, yanıt gövdesi bir OData
varlık kümesidir.
Not
JSON önerilen yük biçimidir ve sürüm 2015-12-11 ve üzeri için desteklenen tek biçimdir.
JSON (sürüm 2013-08-15 ve üzeri)
Her meta veri düzeyi için örnek bir JSON yanıtı aşağıda verilmiştir:
Meta veri yok:
{
"PartitionKey":"mypartitionkey",
"RowKey":"myrowkey",
"Timestamp":"2013-08-22T01:12:06.2608595Z",
"Address":"Mountain View",
"Age":23,
"AmountDue":200.23,
"CustomerCode":"c9da6455-213d-42c9-9a79-3e9149a57833",
"CustomerSince":"2008-07-10T00:00:00",
"IsActive":true,
"NumberOfOrders":"255"
}
En az meta veri:
{
"odata.metadata":"https://myaccount.table.core.windows.net/Customer/$metadata#Customers/@Element",
"PartitionKey":"mypartitionkey",
"RowKey":"myrowkey",
"Timestamp":"2013-08-22T01:12:06.2608595Z",
"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,
"NumberOfOrders@odata.type":"Edm.Int64",
"NumberOfOrders":"255"
}
Tam meta veriler:
{
"odata.metadata":"https://myaccount.table.core.windows.net/Customer/$metadata#Customers/@Element",
"odata.type":"myaccount.Customers",
"odata.id":" https://myaccount.table.core.windows.net/Customers(PartitionKey='mypartitionkey',RowKey='myrowkey')",
"odata.etag":"W/\"0x5B168C7B6E589D2\"",
"odata.editLink":"Customers(PartitionKey='mypartitionkey',RowKey='myrowkey')",
"PartitionKey":"mypartitionkey",
"RowKey":"myrowkey",
"Timestamp@odata.type":"Edm.DateTime",
"Timestamp":"2013-08-22T01:12:06.2608595Z",
"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,
"NumberOfOrders@odata.type":"Edm.Int64",
"NumberOfOrders":"255"
}
Atom akışı (2015-12-11 öncesi sürümler)
burada işlem için örnek bir Atom yanıt gövdesi verilmiştir Insert Entity
.
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xml:base="https://myaccount.table.core.windows.net/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" m:etag="W/"0x5B168C7B6E589D2"" xmlns="https://www.w3.org/2005/Atom">
<id>https://myaccount.table.core.windows.net/mytable(PartitionKey='mypartitionkey',RowKey='myrowkey1')</id>
<title type="text"></title>
<updated>2008-09-18T23:46:19.3857256Z</updated>
<author>
<name />
</author>
<link rel="edit" title="mytable" href="mytable(PartitionKey='mypartitionkey',RowKey='myrowkey1')" />
<category term="myaccount.Tables" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
<content type="application/xml">
<m:properties>
<d:PartitionKey>mypartitionkey</d:PartitionKey>
<d:RowKey>myrowkey1</d:RowKey>
<d:Timestamp m:type="Edm.DateTime">2008-09-18T23:46:19.4277424Z</d:Timestamp>
<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: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>
</m:properties>
</content>
</entry>
Yetkilendirme
Hesap sahibi bu işlemi gerçekleştirebilir. Ayrıca, bu işlemi gerçekleştirme iznine sahip paylaşılan erişim imzasına sahip herkes bunu yapabilir.
Açıklamalar
Tabloya varlık eklediğinizde ve RowKey
sistem özellikleri için PartitionKey
değerler belirtmeniz gerekir. Bu özellikler birlikte birincil anahtarı oluşturur ve tabloda benzersiz olmalıdır.
PartitionKey
Hem hem de RowKey
değerleri dize değerleri olmalıdır.
PartitionKey
ve RowKey
değerleri en çok 1024 karakter uzunluğunda olabilir. Anahtar değeri için bir tamsayı değeri kullanırsanız, tamsayıyı sabit genişlikli bir dizeye dönüştürmeniz gerekir, çünkü bunlar normal olarak sıralanır. Örneğin, doğru sıralamayı sağlamak için değerini 1
0000001
değerine dönüştürün.
Bir özelliği açıkça yazmak için, Atom akışındaki özellik tanımı içinde özniteliğini ayarlayarak m:type
uygun OData
veri türünü belirtin. Yazma özellikleri hakkında daha fazla bilgi için bkz. Varlıkları ekleme ve güncelleştirme.
Tablo Depolama özellikleri için değerleri kalıcı hale getirmez null
. Bir değere sahip bir null
özellik belirtmek, istekte bu özelliğin atlanmasıyla eşdeğerdir.
Toplu ekleme işlemlerini gerçekleştirme hakkında bilgi için bkz. Varlık grubu işlemleri gerçekleştirme.
Ayrıca bkz.
Azure Depolama'ya yönelik istekleri yetkilendirme
OData veri hizmeti sürüm üst bilgilerini ayarlama
Varlıkları ekleme ve güncelleştirme
Durum ve hata kodları
Tablo Depolama hata kodları