2015-07-20 71 views
3

來自使用mongoDB的Im將以此爲例,其中我可以執行類似操作。如何使用documentDB創建唯一索引

collection.ensureIndex('id', {unique: true, dropDups: true }); 

然後每當我嘗試用相同的ID插入數據,我會得到一個重複鍵錯誤,它不會工作。大!

但可以用documentDB做類似的事情嗎?

目前,我有node.js的寫入數據插入下面的代碼:

client.createDocument(collection_id, data_to_insert, function (err, doc) { 
    callback(err, doc); 
}); 

回答

3

DocumentDB沒有定義唯一約束的原生支持。 id屬性是一個特殊的例外,它是文檔的主鍵,必須是唯一的。

您可以利用DocumentDB的triggers對其他文檔屬性實施唯一約束。我在Github上有一個示例觸發器here

從索引角度來看 - 默認情況下,每個文檔中的每個屬性都會自動編入索引。如果您希望特別調整哪些路徑獲得索引,哪些路徑沒有索引,則可以在集合級別上定義自定義index policy

+0

github鏈接不起作用 – StackOverflowVeryHelpful

+0

看起來鏈接成爲[link rot](https://en.wikipedia.org/wiki/Link_rot)的受害者。你可以在這裏找到最新的示例:https://github.com/Azure/azure-documentdb-js-server/blob/master/samples/triggers/uniqueConstraint.js –

相關問題