How can I execute a PL/SQL procedure for Oracle via JDBC? I have a Java webapp with an Oracle DB, and I try to execute this statement at the end of a data migration script:

EXEC DBMS_STATS.GATHER_TABLE_STATS (ownname =&gt; 'MY_SCHEMA', tabname =&gt; 'MY_TABLE', estimate_percent =&gt; dbms_stats.auto_sample_size);


It works in sql*plus, but not via JDBC:

"Error: ORA-00900: invalid SQL statement"


What am I doing wrong?
Instead of EXEC, you should put it between begin ... end, or use the { call } syntax.
Here is an example, in the documentation:

http://docs.oracle.com/cd/E11882_01/java.112/e16548/getsta.htm#i1014127