PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

अद्वितीय कॉलम में शून्य की अनुमति दें

यह एक ग़लतफ़हमी है।
UNIQUE बाधा बिल्कुल करता है आपको क्या चाहिए। एकाधिक NULL मान एक परिभाषित कॉलम में सह-अस्तित्व में हो सकते हैं UNIQUE

मैनुअल:

<ब्लॉकक्वॉट>

सामान्य तौर पर, एक अद्वितीय बाधा का उल्लंघन होता है जब तालिका में एक से अधिक पंक्तियाँ होती हैं जहाँ बाधा में शामिल सभी स्तंभों का मान समान होता है। हालाँकि, इस तुलना में दो अशक्त मानों को समान नहीं माना जाता है। इसका मतलब है कि यहां तक ​​​​कि एक अद्वितीय बाधा की उपस्थिति में भी डुप्लिकेट पंक्तियों को संग्रहीत करना संभव है जिसमें एक शून्य मान होता है विवश स्तंभों में से कम से कम एक में। यह व्यवहार SQL मानक के अनुरूप है, लेकिन हमने सुना है कि अन्य SQL डेटाबेस इस नियम का पालन नहीं कर सकते हैं। इसलिए पोर्टेबल होने के लिए डिज़ाइन किए गए एप्लिकेशन विकसित करते समय सावधान रहें।

बोल्ड जोर मेरा।

ध्यान रखें कि वर्ण प्रकार एक खाली स्ट्रिंग की अनुमति देते हैं ('' ), जो नहीं . है एक NULL मान और एक से अधिक पंक्तियों में दर्ज किए जाने पर किसी भी अन्य गैर-शून्य मान की तरह एक अद्वितीय उल्लंघन को ट्रिगर करेगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या मैं एक plpgsql फ़ंक्शन को एक चर का उपयोग किए बिना एक पूर्णांक लौटा सकता हूं?

  2. plpgsql फ़ंक्शन में तालिका और स्तंभ नामों को तर्क के रूप में परिभाषित करें?

  3. माउंटेन लायन पर पीजी रत्न स्थापित नहीं किया जा सकता

  4. row_to_json . के साथ पुनरावर्ती क्वेरी को पोस्टग्रेज करता है

  5. PostgreSQL के लिए सीरियल छद्म-डेटाटाइप का अवलोकन