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

विभिन्न डेटाटाइप के साथ विदेशी कुंजी सेट करना

वास्तव में यह यहाँ समझ में आता है क्यों:

किसी तालिका में, आप वास्तव में किसी भी स्तंभ को उसकी प्राथमिक कुंजी के रूप में सेट कर सकते हैं। तो यह पूर्णांक, डबल, स्ट्रिंग, आदि हो सकता है। हालांकि आजकल, हम ज्यादातर या तो पूर्णांक का उपयोग करते हैं, या हाल ही में, एक तालिका में प्राथमिक कुंजी के रूप में स्ट्रिंग्स का उपयोग करते हैं।

चूंकि विदेशी कुंजी किसी अन्य तालिका की प्राथमिक कुंजी की ओर इशारा कर रही है, इसलिए आपको विदेशी कुंजी के डेटाटाइप को निर्दिष्ट करने की आवश्यकता है। और यह स्पष्ट रूप से एक ही डेटाटाइप होना चाहिए।

संपादित करें:

जैसा कि हम देख सकते हैं, SQL कार्यान्वयन इस मामले में ढीले हैं:वे संगत प्रकारों (INT और BIG INT, Float या DECIMAL और DOUBLE) की अनुमति देते हैं लेकिन आपके अपने जोखिम पर . जैसा कि हम नीचे आपके उदाहरण में देख सकते हैं।

हालाँकि, SQL मानदंड निर्दिष्ट करते हैं कि दोनों डेटाटाइप समान होने चाहिए। यदि डेटाटाइप वर्ण है, तो उनकी लंबाई समान होनी चाहिए, अन्यथा, यदि यह पूर्णांक है, तो उनका आकार समान होना चाहिए। और दोनों . होना चाहिए हस्ताक्षरित या दोनों अहस्ताक्षरित हों

आप स्वयं यहाँ पर देख सकते हैं, 2003 में प्रकाशित एक MySQL पुस्तक का एक अध्याय।

आशा है कि यह आपके प्रश्न का उत्तर देगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql में JSON का विश्लेषण कैसे करें

  2. जेपीए अपरकेस टेबल नाम

  3. PostgreSQL में स्केल () फ़ंक्शन कैसे काम करता है

  4. [वीडियो] PostgreSQL में JSON डेटा प्रकारों का परिचय

  5. PostgreSQL, SQL स्थिति:42601