डिफ़ॉल्ट रूप से, Oracle पहचानकर्ता (तालिका नाम, स्तंभ नाम, आदि) केस होते हैं-असंवेदनशील . आप उनके आस-पास के उद्धरणों का उपयोग करके उन्हें केस-संवेदी बना सकते हैं (उदाहरण:SELECT * FROM "My_Table" WHERE "my_field" = 1
) एसक्यूएल कीवर्ड (SELECT
, WHERE
, JOIN
, आदि) हमेशा केस-असंवेदनशील होते हैं।
दूसरी ओर, स्ट्रिंग तुलना केस-संवेदनशील हैं (उदाहरण:WHERE field='STRING'
केवल उन स्तंभों से मेल खाएगा जहां यह 'STRING'
है ) डिफ़ॉल्ट रूप से। आप NLS_COMP
. सेट करके उन्हें केस-असंवेदनशील बना सकते हैं और NLS_SORT
उपयुक्त मानों के लिए (जैसे:LINGUISTIC
और BINARY_CI
, क्रमशः)।
नोट:डेटा डिक्शनरी व्यू की पूछताछ करते समय (उदाहरण:dba_tables
) नाम अपर-केस में होंगे यदि आपने उन्हें बिना उद्धरणों के बनाया है, और दूसरे पैराग्राफ में बताए गए स्ट्रिंग तुलना नियम यहां लागू होंगे।
कुछ डेटाबेस (Oracle, IBM DB2, PostgreSQL, आदि) डिफ़ॉल्ट रूप से केस-संवेदी स्ट्रिंग तुलना करेंगे, अन्य केस-असंवेदनशील (SQL सर्वर, MySQL, SQLite)। यह किसी भी तरह से मानक नहीं है, इसलिए बस इस बात से अवगत रहें कि आपकी डीबी सेटिंग्स क्या हैं।