पैकेज प्रक्रिया को डीबग करना और वास्तव में डेटा होने पर कोई डेटा नहीं मिला है।ओरेकल: कोई डेटा नहीं मिला - लेकिन डेटा मौजूद है
परीक्षण बस का चयन करें
SELECT trim(trailing '/' from GL_SECURITY) as DUMMY
FROM [email protected]
WHERE sms_username = 'FUCHSB';
यह खुशी देता है मेरी मान: '23,706 * 706'
जैसे ही मैं इस का चयन किया है करने के लिए में मैं एक NO_DATA _FOUND त्रुटि (बाहर टिप्पणी की पाने की कोशिश त्रुटि हैंडलिंग मैं में डाल)
set serveroutput on
DECLARE
p_BAS_user_name varchar2(20);
v_gl_inclusion varchar2(1000);
v_gl_exclusions varchar2(1000);
BEGIN
--inputs
p_BAS_user_name := 'FUCHSB';
dbms_output.put_line(p_BAS_user_name);
----- GOOD -----
--BEGIN
SELECT trim(trailing '/' from GL_SECURITY) as DUMMY
INTO v_gl_inclusion
FROM [email protected]
WHERE sms_username = p_BAS_user_name;
--EXCEPTION
-- WHEN NO_DATA_FOUND THEN
-- v_gl_inclusion := 'SUPER EFFING STUPID';
--END;
dbms_output.put_line(v_gl_inclusion);
END;
Error report:
ORA-01403: no data found
ORA-06512: at line 12
01403. 00000 - "no data found"
*Cause:
*Action:
FUCHSB
मैं तथ्य यह है कि 1 क्वेरी के आधार पर के अलावा ठीक त्रुटि पकड़ कर सकते हैं मैं 100% पता है कि एक वैल है डेटाबेस में FUCHSB के लिए।
कोई विचार .. मैं वास्तव में ओरेकल को तुच्छ करना शुरू कर रहा हूं। हां यह क्वेरी एक डेटाटाइंक पर चल रही है जैसा कि पहली क्वेरी में देखा गया डेटा है।
धन्यवाद
एसक्यूएल डेवलपर में हल अजीब व्यवहार मुझे संभावित खाली स्थान के नजरअंदाज करने का कारण:
ऐसा लगता है कि जब कर रही है जैसे कि SQL डेवलपर जब स्टैंडअलोन चयन चल रहा है अपने स्वयं के ट्रिमिंग तुलनित्र लागू होता है 'WHERE sms_username = p_BAS_user_name; ' भाग .. पैकेज में बैठे समय बाहर निकलता है .. सफेद जगह का गुच्छा इस मुद्दे का कारण बन रहा था .. अभी भी अजीब है कि यह सामान्य चयन पर लौटता है। हालांकि धन्यवाद!
"व्हाइटस्पेस का गुच्छा" चार्ज डेटाटाइप का सामान्य व्यवहार है =) –