Last Updated: June 6, 2026
CallableStatement is the JDBC interface for invoking code that lives inside the database itself, stored procedures and stored functions. It extends PreparedStatement, so you keep the parameter-binding and SQL-injection safety from the previous lesson, but adds two new ideas: output parameters that the database fills in for you, and a special escape syntax for the call. This lesson covers how to call procedures and functions, how to pass IN, OUT, and INOUT parameters, how to read a ResultSet back from a procedure, and when calling into the database is actually worthwhile.