Domanda

Ho appena iniziato a utilizzare lo strumento "Oracle SQL Developer" e sembra essere maiuscole e minuscole durante la creazione e chiamando tabelle. Ero sempre sotto l'ipotesi che Oracle come database di stato case insensitive. La versione corrente del database è 10.2.0.4.0.

Esempio:

CREATE TABLE T1 
   ( c1 VARCHAR2 (50),
     c2 VARCHAR2 (50)
   );

SELECT C1, C2 FROM t1;
-- This is fine.  No errors

SELECT c1, c2, FROM t1;
/*
Error starting at line 18 in command:
SELECT c1, c2, from t1
Error at Command Line:18 Column:15
Error report:
SQL Error: ORA-00936: missing expression
00936. 00000 -  "missing expression"
*Cause:    
*Action:
*/

Non ho mai visto questo comportamento prima e cercando di capire se questo un problema con lo strumento o il database e se qualcuno ha una soluzione.

È stato utile?

Soluzione

Sicuramente non è un problema con il database Oracle e non un problema con Oracle SQL Developer sia. Se questa è la query effettiva, si dispone di una virgola in più dopo la seconda colonna.

SQL> CREATE TABLE T1 ( c1 VARCHAR2 (50), c2 VARCHAR2 (50) );

Table created.

SQL> SELECT C1, C2 FROM t1;

no rows selected

SQL> SELECT c1, c2, FROM t1;
SELECT c1, c2, FROM t1
               *
ERROR at line 1:
ORA-00936: missing expression

Seleziona c1, c2, da T1 dovrebbe essere invece solo Seleziona c1, c2 da T1;

In generale, se si dispone di una domanda in cui non si è sicuri se lo strumento non funziona come previsto, SQL Plus è la soluzione migliore per verificare semplici casi di test. Si tratta di uno strumento prezioso in questo senso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top