5

I need to get only the procedures using java DatabaseMetaData but this method returns also the functions' names.

DatabaseMetaData dbmd=con.getMetaData();
ResultSet result = dbmd.getProcedures(null, Ousername, null); 
gtzinos
  • 1,205
  • 15
  • 27

1 Answers1

7

That happens because procedures and functions are basically the same in Oracle.

There is a column PROCEDURE_TYPE of the type short that will show the kind of procedure:

  • 1 means there is no result, so it is a procedure.
  • 2 means it returns a result, so it is a function.

You can access that column as usual from the ResultSet:

result.getShort("PROCEDURE_TYPE")
ericbn
  • 10,163
  • 3
  • 47
  • 55
Phenom
  • 223
  • 1
  • 8