2
Azure表存儲實施的唯一主鍵/唯一性驗證是分區鍵+行鍵。如果我想要其他列是唯一的,我需要在應用程序層檢查這個條件。我們如何驗證Azure表存儲列的唯一性?
if(service.GetEmailAddress(emailAddress) == null) {
// email address is not yet registered by a user
// persist user data to the database
}
else
{
// display an error message
}
我很好奇什麼是如果有正試圖在同一列的值保存到同一個表的併發用戶的X個會發生什麼。確保在沒有UNIQUE約束的特定列下面輸入重複值的安全方法是什麼?
嗨Geethanga,我在Azure市場上推出了一個可擴展的數據庫解決方案。使用SQL Azure本身並不是一個好主意,因爲當時你被限制在150GB以下,並且有一點我需要考慮水平分區。最近我一直在玩SQL Azure Federation,但是我不能在那裏創建獨特的約束。每個唯一索引必須包含聯合列。 – Mark13426
在你的情況下,這是真的。數據庫的大小真的讓你陷入困境。但正如我之前說的,我認爲在列視角下查看錶存儲並不好。因爲你在同一個表中有不同類型的實體。這讓您只有一個解決方案可以在業務層中處理此問題。我認爲那是你應該前往的地方。 – Geethanga