आप जो खोज रहे हैं वह वास्तव में एएनएसआई मानकों एसक्यूएल:92, एसक्यूएल:1999 और एसक्यूएल:2003 का हिस्सा है, यानी एक अद्वितीय बाधा को डुप्लिकेट गैर-शून्य मानों को अस्वीकार करना चाहिए लेकिन एकाधिक पूर्ण मान स्वीकार करना चाहिए।
SQL सर्वर की Microsoft दुनिया में हालाँकि, एक NULL की अनुमति है लेकिन कई NULLs नहीं हैं...
SQL सर्वर 2008 में , आप एक विधेय के आधार पर एक अद्वितीय फ़िल्टर किए गए अनुक्रमणिका को परिभाषित कर सकते हैं जिसमें NULLs शामिल नहीं हैं:
CREATE UNIQUE NONCLUSTERED INDEX idx_yourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;
पुराने संस्करणों में, आप बाधा को लागू करने के लिए NOT NULL विधेय के साथ VIEWS का सहारा ले सकते हैं।