Use the OpenEdge SQL Java classes
- Last Updated: February 11, 2026
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
This topic describes how you use the OpenEdge SQL Java classes to issue and process SQL statements in Java stored procedures.
To process SQL statements in a stored procedure, you must know
whether the SQL statement generates output (in other words, if the
statement is a query) or not. SELECT statements,
for example, generate results: they retrieve data from one or more
database tables and return the results as rows in a table.
Whether a statement generates such an SQL result set determines which OpenEdge SQL Java classes you should use to issue it. For example:
- To issue SQL statements that do not generate results (such
as
INSERT,GRANT, orCREATE), use theSQLIStatementclass for one‑time execution, or theSQLPStatementclass for repeated execution. - To issue SQL statements that generate results (
SELECTand, in some cases,CALL), use theSQLCursorclass to retrieve rows from a database or another procedure's result set.
In either case, if you want to return a result set to the application,
use the DhSQLResultSet class to store rows of data
in a procedure result set. You must use DhSQLResultSet methods
to transfer data from an SQL result set to the procedure result
set for the calling application to process it. You can also use DhSQLResultSet methods
to store rows of data generated internally by the procedure.
In addition, OpenEdge SQL provides the DhSQLException class
so procedures can process and generate Java exceptions through the
try, catch, and throw constructs.