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

ORA-00955 से बचना:नाम पहले से ही किसी मौजूदा वस्तु द्वारा उपयोग किया जा रहा है

ऐसा इसलिए है, क्योंकि आपने एक स्लैश / लगाया है स्क्रिप्ट के अंत में।

जिसके कारण, बफ़र में पिछला स्टेटमेंट फिर से निष्पादित होता है। जिसका अर्थ है, तालिका बनाएं कथन दो बार निष्पादित किया जाता है

स्लैश को अंत से हटा दें। सेमी-कोलन व्यक्तिगत प्रश्नों के लिए स्टेटमेंट टर्मिनेटर के रूप में पर्याप्त है।

मैं इस तरह से करूंगा:

SQL> BEGIN
  2     EXECUTE IMMEDIATE 'DROP TABLE TEMP_SOURCE';
  3  EXCEPTION
  4     WHEN OTHERS THEN
  5        IF SQLCODE != -942 THEN
  6           RAISE;
  7        END IF;
  8  END;
  9  /

PL/SQL procedure successfully completed.

SQL>
SQL> CREATE TABLE TEMP_SOURCE
  2    (
  3      COL_1 VARCHAR2(30 CHAR),
  4      COL_2 VARCHAR2(30 CHAR),
  5      COL_3 VARCHAR2(30 CHAR)
  6    );

Table created.

SQL>

ऐसा कहने के बाद, आपके पास स्क्रिप्ट में कई समस्याएं हैं।

आपके पास कॉलम के नाम में स्पेस नहीं हो सकता। COL 1 एक अमान्य स्तंभ नाम है। आपको अमान्य पहचानकर्ता त्रुटि प्राप्त होगी ।

एक और मुद्दा:

एक अतिरिक्त अल्पविराम . है स्तंभ सूची के अंत में



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JAXB में JAXBElement क्यों और कब आवश्यक है?

  2. Oracle SQL:वर्ष के सप्ताह को तिथि से निकालने से यादृच्छिक परिणाम मिलते हैं

  3. प्राथमिक कुंजी बाधा जैसे ट्रिगर कैसे बनाएं?

  4. कीवर्ड द्वारा Oracle विभाजन

  5. Oracle AS उपनाम में काम नहीं कर रहा