ACCEPT एक SQL*Plus and SQL Developer क्लाइंट कमांड , पीएल/एसक्यूएल कमांड नहीं। आप एक प्रतिस्थापन चर सेट कर रहे हैं, जिसका आप उपयोग कर सकते हैं के साथ एक अनाम ब्लॉक में:
ACCEPT lastname CHAR FORMAT 'A20' PROMPT 'Enter employee lastname: '
SET serveroutput on;
BEGIN
DBMS_OUTPUT.PUT_LINE('&lastname');
END;
/
हालांकि SQL में इसका उपयोग करना अधिक सामान्य होगा:
select '&lastname' from dual;
PL/SQL को अंतःक्रियात्मक रूप से उपयोग करने के लिए डिज़ाइन नहीं किया गया है, लेकिन यह स्पष्ट नहीं है कि आप वास्तव में क्या करेंगे।
SQL डेवलपर (संस्करण 4.1.3, कम से कम) format
को हैंडल नहीं करता है काफी हद तक SQL*Plus जैसा ही है, जो एक बग हो सकता है। यदि आप प्रश्न में दिखाए गए अनुसार ACCEPT का उपयोग करते हैं और उपरोक्त कोड स्क्रिप्ट से कोई संकेत या आउटपुट नहीं है; लॉगिंग फलक Accept.java:341 से 'गंभीर' संदेश दिखाता है। यदि आप डिफ़ॉल्ट आपूर्ति भी करते हैं तो यह काम करता है:
ACCEPT lastname CHAR FORMAT 'A20' DEFAULT 'dummy' PROMPT 'Enter employee lastname: '
डिफ़ॉल्ट मान शीघ्र संवाद बॉक्स में नहीं दिखाया गया है, और आपके प्रतिस्थापन चर में वह डिफ़ॉल्ट मान होगा यदि आप संवाद को ठीक करते हैं - जो कि अपेक्षित व्यवहार है "यदि कोई उत्तर नहीं दिया गया है"। यदि आप एक डिफ़ॉल्ट नहीं चाहते हैं तो आप थोड़ा फंस गए हैं - एक शून्य डिफ़ॉल्ट निर्दिष्ट करना (''
के साथ) ) को भी वही गंभीर संदेश मिलता है, जो संबंधित हो सकता है।