Java Sql Sqlsyntaxerrorexception Ora 00900 Invalid Sql Statement

Error: 'ORA-00900: invalid SQL statement' after executing procedure Oracle 10g Express Edition, Windows 7. Hi All, We have requirement where we have to bring the ODI user name in one of the IKM step and insert it into Table column. My select query in KM look. We are getting IO exception: Connection timed out; nested exception is java.sql.SQLException. We are frequently getting sql connection timeout exceptions from two of. ORA-00900 invalid SQL statement Cause: The statement is not recognized as a valid SQL statement. This error can occur if the Procedural Option is not installed and a SQL statement is issued that requires this option (for example, a CREATE PROCEDURE statement). You can determine if the Procedural Option is installed by starting SQL.Plus. ORA-00900 Error Message “Invalid SQL Statement” Error ORA-00900 occurs when the user tries to execute a statement that is not a valid SQL statement. This error occurs if the Procedural Option is not installed and a SQL statement is issued that requires this option. Users have several options in resolving error ORA-00900.



Similar Messages:
ADVERTISEMENT

PL/SQL :: ORA-00900 Invalid SQL Statement When Doing Execute Immediate Using

Jun 21, 2012

I'm writing simple code db is 9.2.0.8
create or replace procedure gather_part_stats(p_schema in varchar2, p_table in varchar2)
as
l_quarter varchar2(8) := to_char(sysdate, 'Y'YYYY'_Q'q') ;
l_sql varchar2(2000) := 'exec dbms_stats.gather_table_stats(:schema, :table, method_opt => 'for all columns size 1' , cascade => true , estimate_percent => 1 , granularity => 'PARTITION', partname=>:part);';
[code].......
I'm using using to avoid sql injection,
Error is:
SQL> exec gather_part_stats('TEST' , 'TEST');
l_quarter: Y2012_Q2
exec dbms_stats.gather_table_stats(:schema, :table, method_opt => 'for all columns size 1' , cascade => true , estimate_percent => 1 , granularity => 'PARTITION', partname=>:part);
BEGIN gather_part_stats('TEST' , 'TEST'); END;
*
ERROR at line 1:
ORA-00900: invalid SQL statement
ORA-06512: at 'INSTALL.GATHER_PART_STATS', line 8
ORA-06512: at line 1

PL/SQL :: 00900 Invalid SQL Statement Error?

Jul 30, 2012

I'm teaching myself to write stored procedures, working in TOAD 10.5 with Oracle 10g. I keep getting error ORA-00900: invalid SQL Statement. Here's the code, cut down to bare minimum sample size. I can't see where I'm doing anything wrong.
If I cut out the cursor (taking it down to just 'Begin' and 'End'), it does run, but I can't see anything wrong with the cursor.
CREATE OR REPLACE PROCEDURE IN_PROCESS_CASES_BOS
IS
V_HELLO VARCHAR2(10);
CURSOR C_MAIN IS
SELECT 'HELLO' FROM DUAL;
[code]....

Client Tools :: Error / ORA-00900 / Invalid SQL Statement After Executing Procedure

Caused by java.sql.sqlexception ora-00900 invalid sql statementJan 3, 2011

CREATE OR REPLACE PROCEDURE test
IS
CURSOR cusers IS SELECT user_name, user_date FROM users;
uname users.user_name%TYPE;
udate users.user_date%TYPE;
BEGIN
OPEN cusers;
[code].....
When I try to execute this procedure I get following error:
ORA-00900: invalid SQL statement
Compilation of procedure is successful.
SQL code for creating the USERS table is here:
CREATE TABLE 'USERS'
('USER_ID' NUMBER(10,0) NOT NULL ENABLE,
'USER_NAME' VARCHAR2(50) NOT NULL ENABLE,
'USER_EMAIL' VARCHAR2(50) NOT NULL ENABLE,
'USER_PASS' VARCHAR2(50) NOT NULL ENABLE,
'USER_DATE' DATE NOT NULL ENABLE,
CONSTRAINT 'USERS_PK' PRIMARY KEY ('USER_ID') ENABLE
)

ORA-24373 / Invalid Length Specified For Statement

Aug 20, 2008

We are getting an error in our web application that is using Oracle.DataAccess.dll v2.111.6.20. When a couple users are using the site everything is fine, but when the load goes up we start getting the error ORA-24373: invalid length specified for statement. We are unable to duplicate this error in Visual Studio and don't know where to turn. We use stored procedure and the .dll to access the database for everything. Also, when this error occurs, it occurs indefenitely for all OracleCommand objects until the web server is rebooted. Also, when I attempt to remote debug with SQL Developer, the process doesn't even make it to the database!

Update Statement Not Working - Invalid Identifier?

Apr 15, 2009

I am having trouble getting the following update statement to work.
update Team
set Names.Team_Name = 'Not Yet Assigned'
WHERE
Team.ROE_PROCESS = 'G' AND
[code]...
The error message I am receiving is:
ORA-00904: 'Department'.'UI_WKLY_EARNS': invalid identifier

SQL & PL/SQL :: Invalid Identifier Error In Select Statement?

Mar 18, 2011

Where I run this update query, I get the error:
Error report:
SQL Error: ORA-01427: single-row subquery returns more than one row
01427. 00000 - 'single-row subquery returns more than one row'
*Cause:
*Action:
UPDATE XXX_CURR_EOM SET ID =
(select CAPITALPLAN.ID from capitalplan, XXX_CURR_EOM
where
XXX_CURR_EOM.ID = CAPITALPLAN_id)
don't know what it means.

SQL & PL/SQL :: Oracle Error For Invalid Identifier In Execute Immediate Statement

Apr 5, 2011

I have a procedure as below. To sum up the procedure in one line it dynamically forms a string to get the values of the type which is passed as an input to the procedure.
I call the procedure as
exec exec_imm( exec_imm_t(1,'asd','1/2-34'));
ERROR:
Error starting at line 9 in command:
exec exec_imm( exec_imm_t(1,'asd','1/2-34'))
Error report:
ORA-00904: 'P_TYPE_DATA'.'ADDRESS': invalid identifier
ORA-06512: at 'PTK_ADM.EXEC_IMM', line 26
ORA-06512: at line 1
00904. 00000 - '%s: invalid identifier'
NOTE:
When I try to execute the procedure with the execute immediate statement I get the above error. But when I execute the select statement which is nothing but the value in v_type_data directly (as seen in the comments in the code below) there is no error. But when the same v_type_data is used in execute immediate, I get an error.
CREATE OR REPLACE procedure exec_imm(p_type_data exec_imm_t)
AS
v_type_str CLOB := NULL;
v_type_data CLOB := NULL;
v_type_name VARCHAR2(25) := NULL;
BEGIN
[code]......

Server Utilities :: Schema Impdb Invalid Statement Error

May 11, 2010

I am trying to import a schema backup using sqldeveloper and getting this syntax error:
ORA-00900: invalid SQL statement
Here is the import statement:
impdp sys/*****@ccpsp schemas=ccpsp_staging directory=dmpdir DUMPFILE=CCPSP_USERCCPSP_STAGINGSCHEMABACKUP_07MAY2010.dmp LOGFILE=IMPDP_CCPSPStagingSchemaImport.log;

Server Utilities :: Execution Of Oracle 11g Wrapped Procedure Gives Ora-00900 Error

Apr 4, 2013

I have a procedure which i wrapped using the oracle 11g wrap utility. If i execute the wrapped procedure using jdbc i am getting an error of 0RA-00900 invalid sql statement.
The procedure is having basic sql statements only.The same procedure if i wrap using Oracle 9i and execute using jdbc it works fine.Is there any change in Oracle 9i wrap utility and Oracle 11g wrap utility.
I tried even Oracle 10g wrap it is also not working fine.

Client Tools :: TOAD Error ORA-00900 Procedural Software Installation?

Nov 8, 2011

We use this software Toad for Oracle here and I have just started learning PL SQL.I am coming across a few errors in Toad for Oracle
First of all,
When I execute snippet (Ctrl + Enter), I get this ORA-00900 error and the message that I need to upgrade my version of knowledge xpert. I did that to 10.1. I then restarted my computer and now it is still showing me that error ORA-00900 but without any message. I do not get output, even for simple programs but when I try to execute snippet, it asks for my 'Edit SQL' screen and after which it gives me a few outputs.

Variable Usage In Type Of Table Declaration Statement And Execute Immediate Statement

Aug 10, 2011

HOW to use variable P_TMPLID in following statement
TYPE typ_unrecon IS TABLE OF REC_' || P_TMPLID ||'_UNRECON%ROWTYPE index by binary_integer;
because its throwing error while compiling
and also in statement
FORALL i IN unrecondata.FIRST .. unrecondata.LAST SAVE
EXCEPTIONS
--STRSQL := ';
--STRSQL := ' INSERT INTO REC_' || P_TMPLID ||'_UNRECON VALUES ' || unrecondata(i);
-- EXECUTE IMMEDIATE STRSQL;
INSERT INTO REC_' || P_TMPLID ||'_UNRECON VALUES unrecondata(i);---throwing error on this statement
commit;
--dbms_output.put_line(unrecondata(2).TRANSID);
EXCEPTION

SQL & PL/SQL :: Select Statement From Schemas In MERGE Statement In USING Clause

Sep 13, 2013

In the following merge statement in the USINg clause...I am using a select stament of one schema WEDB.But that same select statement should take data from 30 schemeas and then check the condition below condition
ON(source.DNO = target.DNO
AND source.BNO=target.BNO);
I thought that using UNIONALL for select statement of the schemas as below.
SELECT
DNO,
BNO,
c2,
c3,
c4,
c5,
c6,
c7
[code]....

SQL & PL/SQL :: Select Statement Is Blocking A Delete Statement

Jan 11, 2012

I am using JDBC to run a few queries from my Java program (multi-threaded one).I am facing an issue where a select statement is blocking a delete statement. From the java code point of view, there are 2 different threads accessing the same tables (whith different DB connection objects).
When the block occurs (which i was able to find out from the java thread dump that there is a lock on oracle), the below is the output:
SQL> SELECT TO_CHAR(sysdate, 'DD-MON-YYYY HH24:MI:SS')
2 || ' User '||s1.username || '@' || s1.machine
3 || ' ( SID= ' || s1.sid || ' ) with the statement: ' || sqlt2.sql_text
||' is blocking the SQL statement on '|| s2.username || '@'
4 5 || s2.machine || ' ( SID=' || s2.sid || ' ) blocked SQL -> '
6 ||sqlt1.sql_text AS blocking_status FROM v$lock l1, v$session s1, v$lock l2 ,
7 v$session s2,v$sql sqlt1, v$sql sqlt2
8 WHERE s1.sid =l1.sid
9 AND s2.sid =l2.sid AND sqlt1.sql_id= s2.sql_id
AND sqlt2.sql_id= s1.prev_sql_id AND l1.BLOCK =1
10 AND l2.request > 0 AND l1.id1 = l2.id1 AND l2.id2 = l2.id2;
[code]...
From the above it can be seen that a select statement is blocking a delete. Unless the select is select for Update, it should not block other statements is not it ?

SQL & PL/SQL :: Insert Into Statement Doesn't Insert All Rows Return By Select Statement?

Jan 12, 2011

If i inserted the values in table it gets inserting very few rows only.I dont know y it is?

SQL & PL/SQL :: Invalid Row-id?

Java Sql Sqlexception Ora 00900 Invalid Sql Statement Jdbc

Jul 9, 2013

I CREATE A COLUMN AS 'STATUS VARCHAR2(40)' IN EMP1 TABLE IN SCOTT USER
EMP1 TABLE IS A DUPLICATE TABLE OF EMP
CREATE OR REPLACE PACKAGE SAL_STATUS IS
PROCEDURE SAL_STATUS;
END SAL_STATUS;
[code]...
PACKAGE CREATED SUCCESSFULLY...
WHEN I EXECUTE THIS PACKAGE]
BEGIN
SAL_STATUS.LOAN_STATUS;
END;
IT THROW ERROR AS
BEGIN
*
ERROR at line 1:
ORA-01410: invalid ROWID
ORA-06512: at 'SCOTT.SAL_STATUS', line 21
ORA-06512: at line 2
HOW CAN I OVERCOME THIS ERROR..

SQL & PL/SQL :: All Invalid Records

Jun 12, 2013

I have the following sample data:
Sample Data
WITH DATA AS
(
SELECT '100' GRP, '01-JAN-2012' EFFECTIVE_DATE, '30-JUN-2012' TERMINATION_DATE from DUAL
UNION ALL
SELECT '100' GRP, '01-JUL-2012' EFFECTIVE_DATE, '31-JUL-2012' FROM DUAL
union all
[code]......
Query Result
10001-JAN-201230-JUN-2012
10001-JUL-201231-JUL-2012
10031-JUL-201205-AUG-2012
10001-AUG-201215-AUG-2012
10017-AUG-201231-AUG-2012
Expected Output
10031-JUL-201205-AUG-2012
10017-AUG-201231-AUG-2012
The above mentioned output is produced by using the following business rules:
-- row no 1 = Valid records
-- row no 2 = effective date is 1 day after termination date of row no 1. Means valid records
-- row no 3 = effective date is equal to the row no 2 termination date -- Means invalid record
-- row no 4 = effective date is 1 day after termination date of row no 2 Means valid records
-- row no 5 = The gap between row no 4 termination date and row no 5 effective date is more than 1 day. Means record is invalid.
Query always compare effective date with previous valid record termination date by using the above mentioned condition and return result accordingly.
Summary is that there should be 1 day gap between termination date and next effective date as well as effective date
is always less than termination date in same rows. In addition, if record is invalid then next record check with previous valid record termination date.

SQL & PL/SQL :: Invalid Table Name

Mar 8, 2011

create or replace TRIGGER 'tddev.stage_column' BEFORE
INSERT ON SRC_STG_INDEX_MAP_TABLE
FOR EACH ROW
DECLARE
[Code]....
The trigger fails saying invalid table_name for all_tab_columns.

SQL & PL/SQL :: Invalid Identifier?

Oct 30, 2011
Caused by java.sql.sqlexception ora-00900 invalid sql statement

I am trying to do an update with an anonymous PL/SQL block because it has been absolutely impossible to get by the infamous 'Single-row subquery returns multiple rows' Whatever.So this code below work... Obviously, I am updating it to a constant.. OK, duh.. Of course it works, it's easy.... Now, I really need to update it to a value in another table that is in my cursor. I believe that I probably need to declare a secondary cursor.
I'm just getting back in the DBA saddle, so I'm a little rusty..
set serveroutput on;
DECLARE
numrows NUMBER := 0;
total NUMBER := 0;
CURSOR upd_record_cur IS SELECT m.rowid, m.swcm_cycle, t.newcycle, p.aprem_no from toad.fswcmas m,
[code]...
Not so good here
ORA-06550: line 20, column 53:
PL/SQL: ORA-00904: 'TOAD'.'TTP43425_LOAD'.'NEWCYCLE': invalid identifier
ORA-06550: line 20, column 10:
PL/SQL: SQL Statement ignored
Doesn't work...
BEGIN
FOR upd_rec IN upd_record_cur LOOP
update toad.fswcmas sw set sw.swcm_cycle = toad.ttp43425_load.newcycle
WHERE rowid = upd_rec.rowid;
total := total + 1;

SQL & PL/SQL :: Cause Of Invalid Package?

Java Sql Sqlsyntaxerrorexception Ora 00900 Invalid Sql StatementMar 8, 2012

There are 4 packages got invalid 2 days back. when I analyze the database I came to know that there are 5 tables got truncated and 2 tables got altered during the issue period through the code. Those truncated tables have the indirect relationship with these 4 packages.but there is no any relation between these packages and altered table.
Also during that time I got the below error in my alert log.I am sure the cause this error is the invalid packages.
ORA-00600: internal error code, arguments: [kkxprpic8], [], [], [], [], [], [], []
I know if any alteration happens in a table, the refrence package will be getting as invalid. Apart from this, is there anyother cause to bring the package into invalid status? How to proceed further to find the root cause of thses invalid package?

SQL & PL/SQL :: Invalid Cursor?

Dec 2, 2010

procedure vieworderstatus(in_CALL_ID IN NUMBER ,
in_DAYS_OF_HISTORY in number ,
out_SUPLY_REORDR_STATUS_LST OUT supplyreordrlist ,
out_ERR_CODE OUT NUMBER,
out_ERR_MESSAGE out varchar2);
This procedure takes retrievs cust_id for given input call_id. The procedure then retrieves order information for that customer and returns using the out ref cursor. I need to test the scenario where the user passes invalid call_id.
The following query returns no data for call_id = 12345 ( invalid call_id)
select fk_cust_id into v_cust_id
from xcom_call
where call_id = in_CALL_ID;
in such cases; I just need to return null ref cursor and log the error but right now when I pass invalid call_id ; I am getting 'invalid cursor' error.How do I handle this ?

SQL & PL/SQL :: Invalid Number

Dec 3, 2012

select to_char(to_date(mcih_date, 'dd-mm-yyyy')),
mcih_terms from I_MEMO_CONF_H;
TO_CHAR(TO_DATE(MCIH_DATE,'DD-MCIH_TERMS
118-OCT-1245
206-NOV-1222
[Code]...
why i am getting this error?

PL/SQL :: Get All Invalid Records

Jun 12, 2013

Java Sql Sqlsyntaxerrorexception Ora 00900 Invalid Sql Statement Expected Delete Insert Procedure Select Or Update

Oracle Version : Oracle Database 11g Express Edition Release 11.2.0.2.0 - ProductionI have following sample data:
Sample DataWITH DATA AS( SELECT '100' GRP, '01-JAN-2012' EFFECTIVE_DATE, '30-JUN-2012' TERMINATION_DATE
from DUAL
UNION ALL
SELECT '100' GRP, '01-JUL-2012' EFFECTIVE_DATE, '31-JUL-2012'
FROM DUAL
UNION ALL SELECT '100' .
[Code]....
Business Rules: I have to get all invalid records according to the below business rules.
- row no 1 and 2 are valid records because row no 2 effective date start after the termination date of row no 1
- row no 3 is invalid record because effective date start with termination date of row no 2
- row no 4 is valid record because effective date is after or greater than previous valid record termination date that is row no 2 (31-jul-2012).
- row no 5 is invalid record effective date is smaller than previous termination date
- row no 6 is valid record because effective date is greater than previous valid termination date that is row no 4 .
- row no 7 is invalid record because same data already exist in row no 6
- row no 8 is valid because effective date is greater than previous valid record that is row no 6 termination date.

Oracle Sys Object Invalid

Jun 21, 2013

Oracle sys object are Invalid,But database working fine. How to fix these problem, I don't have oracle support,
Database Dba_registry contain are All Valid.But sys object getting Invalid.
Oracle 10g 10.2.0.5 Standard
OWNERCOUNT(*)
MDSYS359
DMSYS24
PUBLIC147
CTXSYS3
OLAPSYS32
XDB 5
SYS 141
Dba_registry
COMP_IDSTATUS
APSOPTION OFF
SDOOPTION OFF
ODMOPTION OFF
AMDOPTION OFF
XOQOPTION OFF
OWMVALID
CATALOGVALID
CATPROCVALID
JAVAVMVALID
XMLVALID
CATJAVAVALID
RULVALID
EXFVALID
CONTEXTVALID
XDBVALID
EMVALID
ORDIMVALID

ORA-02778 / Name Given For The Log Directory Is Invalid

May 6, 2008

I restored a date in my database (the backup of that date was taked by a snap on Windows Server 2003), now I try to startup the database it gives me the following error
ORA-02778: Name given for the log directory is invalid
here is a copy of my spfile
*.background_dump_dest='H:oracleoradatagdwh2401BDUMP'
*.bitmap_merge_area_size=16777216
*.cluster_database=FALSE
*.compatible='9.2.0.0.0'
*.control_files='G:oracleoradataDWHLIVECONTROL01.CTL','H:oracleoradataDWHLIVECONTROL02.CTL','I:oracleoradataDWHLIVECONTROL03.CTL'
*.core_dump_dest='H:oracleoradatagdwh2401CDUMP'
[code]....
this is a picture of my alert_log file
Tue May 06 09:42:15 2008
Starting background process EMN0
EMN0 started with pid=53, OS id=13704
Tue May 06 09:42:16 2008
Shutting down instance: further logons disabled
Tue May 06 09:42:18 2008
Stopping background process QMNC
Tue May 06 09:42:19 2008
[code]....

ORA-00911 - Invalid Character

Jun 15, 2010

I get the ORA-00911: invalid character. I tried using quotation marks but does not work. The error is on line 25, if you change it the error just change to statement ended incorrectly.
SELECT '
,TMTask.TMTaskSeqNo
,TMTask.TMWorkFlowTypeSeqNo
[Code].....

SQL & PL/SQL :: View To See Invalid Objects

Apr 20, 2011

i want create view to select all invalid objects in database.So i create this one:
CREATE OR REPLACE FORCE VIEW INVALID_OBJECTS_DETAILS
(
DETAILS
)
AS
SELECT DISTINCT a.owner || ', ' || a.object_name
FROM dba_objects a, dba_source b
WHERE a.owner = b.owner
AND a.object_name = b.name
AND a.object_type = b.TYPE
AND a.status != 'VALID'
AND b.text NOT LIKE '%@%';
But I want only select invalid objects without a database link .

SQL & PL/SQL :: ORA-00911 Invalid Character

Caused By Java.sql.sqlexception Ora-00900 Invalid Sql Statement

Jul 12, 2011

i want to update a table with the .xsl file i wrote the below code for that but its sohwing me the
ORA-911 invalid charecter error
at the symbol '{' in code.
UPDATE LR.LR_LED_DOC_XSL_MASTER
SET XSL_DATA ={blobfile='D:BackupLog detailsCANCUSTOMSMEMO.xsl'}
where rtrim(XSL_CODE) ='CANCUSTOMSMEMO';

ORA-20507 Invalid Numeric Value N

Jun 13, 2011

I am using APEX 4.0.2.00.06 on a Linux server running Oracle 11g R2 and have the following problem:
I have a page with two forms for creation of new rows in either the sites table or the site-projects table. Site-projects is defined as follows with four numbers and two character fields:
Site_id number(10,0) PK1
Cruise_id number(10,0) PK2
Sequence_number number(10,0) PK3
Project_id number(10,0)
Assigned_flag varchar2(1) default �N�
Planned-site_flag varchar2(1) default �N�
The entry form uses select lists for many of the fields, but it is the assigned_flag that seems to be causing problems. It�s LOV definition is static2:UNASSIGNED;N,ASSIGNED;Y
When I tap the create button, I get :
ORA-20507: Invalid numeric value N for column ASSIGNED_FLAG Error Unable to process row of table SITES.
This suggests that something is going on at the sites table even though I use the create button associated with the site-projects table. Am I invoking the row processing for the sites table as well? Why does it run into invalid number when the field is varchar2? Actually, I get the exact same error if I use the create button on the sites portion of the page.
The site table has the following columns:
Site_id number(10,0) PK1
Parent_site_id number(10,0) nullable
Stratum_id number(10,0)
Area_id number(10,0)
Site_type_id number(10,0)
Name varchar2(50)

SQL & PL/SQL :: Compile Invalid Objects

Jul 16, 2012

Java.sql.sqlsyntaxerrorexception: Ora-00900: Invalid Sql Statement

I am Modifying a table structure, so dependent objects(triggers,packages etc) are getting invalid. So i thought of compiling those invalid objects which are related with the modified table. I used below query to get the invalid objects,
select obj.object_name,obj.object_type from user_objects obj,all_dependencies dep
where referenced_name='DEPT' and obj.object_name=dep.name and dep.owner='SCOTT' and obj.status='INVALID'
Q1)What is wrong with this query, sometimes it works sometime it doesn't.?
Q2)All_dependencies : does this view show all dependent object on a table even the Invalid one's?
Q3) Is there any alternative to find the dependent invalid objects or even dependent object on a table ?

Ranch Hand
posted 5 years ago
I have tried the following SQL but it returned an error:
DESCRIBE DOGNAME;
error:
java.sql.SQLSyntaxErrorException: ORA-00900: invalid SQL statement
I can run other SQL statements and they run without errors:
SELECT * FROM DOGNAME;
Why would this happen only for DESCRIBE?
Sheriff

Java Sql Sqlsyntaxerrorexception Ora 00900 Invalid Sql Statement Ms Access

posted 5 years ago
DESCRIBE is an Sql*Plus command, not an SQL command. This means that it isn't executed by the database, but by the Sql*Plus client - the command line tool you can use to run both SQL and Sql*Plus commands and see their output on the console. It can be somewhat confusing to figure out which commands are pure SQL, and which are Sql*Plus ones - if it is the case, this page listing all Sql*Plus commands can help.
Note: some other tools, such as SqlDeveloper, can also execute the DESCRIBE command (as well as some other Sql*Plus commands). Similarly to the Sql*Plus client, they do it by interpreting the command themselves instead of sending them to the database server.
When you execute any Sql*Plus command through JDBC, the command is sent directly to the Oracle database, which doesn't know it - it isn't an SQL command as mentioned earlier. So you're getting the ORA-00900 exception.
If you want to query table structure from Java, you could use DatabaseMetaData. It probably isn't covered by Oracle's JDBC tutorial, but there are some examples available on the web. If you can't get it working, I'd suggest asking question in our JDBC forum, as this JDBC interface isn't Oracle specific.