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

Oracle कब/क्यों डेटाबेस तालिका में एक पंक्ति में NaN जोड़ता है

दस्तावेज़ीकरण से :

जहां तक ​​मेरी जानकारी है, आप केवल बाइनरी_फ्लोट या बाइनरी_डबल कॉलम; उन डेटा प्रकारों में NaN के लिए उनके अपने अक्षर भी हैं , और एक is nan हालत उनके लिए भी, और nanvl() समारोह उनमें हेरफेर करने के लिए।

ऐसा मान प्राप्त करने के तरीके का एक उदाहरण शून्य फ्लोट/डबल मान को शून्य से विभाजित करना है:

select 0f/0 from dual;

0F/0
----
NaN  

... इसलिए यदि आप NaN देख रहे हैं तो आपका एप्लिकेशन लॉजिक या अंतर्निहित डेटा टूट सकता है। (ध्यान दें कि आप इसे 'सामान्य' संख्या प्रकार के साथ प्राप्त नहीं कर सकते हैं; आपको ORA-01476:divisor is equal to Zero मिलता है। जब तक कि अंश फ्लोट या डबल न हो)।

हालांकि आपको शून्य या ऋणात्मक संख्याओं के लिए NaN नहीं मिलेगा। यह भी संभव है कि आपके पास एक स्ट्रिंग कॉलम हो और एक एप्लिकेशन 'NaN' शब्द डाल रहा हो, लेकिन संख्याओं को स्ट्रिंग के रूप में संग्रहीत करना कई स्तरों पर एक बुरा विचार है, इसलिए उम्मीद है कि ऐसा नहीं है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle फ़ंक्शन उदाहरण (रिटर्न नंबर)

  2. कॉलम को पंक्ति ऑरैकल में स्थानांतरित करें

  3. हाइबरनेट डेटाबेस से अनुक्रम सूचना प्राप्त नहीं कर सका

  4. PHP का OCI8/Oracle oci_bind_array_by_name मेरे लिए काम क्यों नहीं कर रहा है?

  5. तालिका में प्रत्येक कॉलम के लिए डिफ़ॉल्ट मान कैसे रखें?