यदि आप SQLcl या SQL*Plus में एक बहु-पंक्ति क्वेरी चलाने का प्रयास कर रहे हैं, और आपको "अज्ञात कमांड" जैसी त्रुटि मिलती रहती है, लेकिन इसे SQL डेवलपर में चलाने से ऐसी कोई त्रुटि नहीं होती है, तो शायद यह पोस्ट मदद करेगी।पी>
डिफ़ॉल्ट रूप से, SQLcl और SQL*Plus SQL कथनों में रिक्त पंक्तियों की अनुमति नहीं देते हैं। हालांकि, आप इसे SET SQLBLANKLINES
. से बदल सकते हैं आदेश।
सिंटैक्स
वाक्य रचना इस प्रकार है:
SET SQLBL[ANKLINES] {ON | OFF}
इसका मतलब है कि आप या तो पूर्ण SQLBLANKLINES
का उपयोग कर सकते हैं या इसका शॉर्टहैंड फॉर्म SQLBL
, और आप इसे ON
. पर सेट कर सकते हैं या OFF
.
यह OFF
है डिफ़ॉल्ट रूप से। इसे ON
पर सेट करना आपको अपने कोड में रिक्त पंक्तियों को शामिल करने में सक्षम करेगा।
उदाहरण
सबसे पहले, मैं अपनी वर्तमान सेटिंग की जांच करूंगा:
SHOW SQLBLANKLINES
परिणाम:
sqlblanklines OFF
वर्तमान में, रिक्त पंक्तियों के लिए समर्थन अक्षम है।
मान लीजिए हमारे पास निम्न SQL कथन है:
SELECT 3 * 10
FROM DUAL;
अगर मैं इसे SQLcl में कॉपी और पेस्ट करता हूं और इसे निष्पादित करने का प्रयास करता हूं तो यहां क्या होता है:
SQL> SELECT 3 * 10 2 3* FROM DUAL; Error starting at line : 1 in command - SELECT 3 * 10 Error at Command Line : 1 Column : 13 Error report - SQL Error: ORA-00923: FROM keyword not found where expected 00923. 00000 - "FROM keyword not found where expected" *Cause: *Action: Error starting at line : 1 in command - FROM DUAL Error report - Unknown Command
रिक्त रेखा के कारण कथन विफल हो जाता है।
SQLBLANKLINES
सेट करें करने के लिए ON
अब SQLBLANKLINES
सेट करते हैं करने के लिए ON
:
SET SQLBLANKLINES ON
और फिर से क्वेरी चलाएँ:
SELECT 3 * 10
FROM DUAL;
अब मुझे यही मिलता है:
SQL> SELECT 3 * 10 2 3* FROM DUAL; 3*10 _______ 30
इस बार कथन सफल हुआ।
आशुलिपि फ़ॉर्म
आप वैकल्पिक रूप से शॉर्टहैंड फॉर्म का उपयोग कर सकते हैं SQLBL
।
वर्तमान सेटिंग लौटाने का उदाहरण:
SHOW SQLBL
परिणाम:
sqlblanklines ON
इसे बंद करने और इसे फिर से दिखाने का उदाहरण:
SET SQLBL OFF
SHOW SQLBL
परिणाम:
sqlblanklines OFF