Option | Description |
---|---|
CONTAINS SQL | The procedure can execute SQL calls using CLIv2 or JDBC. The procedure neither reads nor modifies SQL data in the database. An example is a procedure whose body consists of just control statements local to the procedure. If such a procedure attempts to read or modify SQL data, or calls a procedure that attempts to read or modify SQL data, the system raises the following SQLSTATE exception code. '2F004' - reading SQL-data not permitted |
MODIFIES SQL DATA | The procedure can execute all SQL calls that can validly be called from an SQL procedure using CLIv2 or JDBC. This is the default option for SQL procedures that do not specify an SQL Data Access clause when the procedure is defined. An example of such a statement is an UPDATE, INSERT or DELETE. |
NO SQL | The procedure cannot execute SQL calls. This is the default option for external SQL procedures. |
READS SQL DATA | The procedure cannot execute SQL calls using CLIv2 or JDBC that modify SQL data, but can make SQL calls that read SQL data. If such a procedure attempts to modify SQL data, or calls a procedure that modifies database data, the system raises the following SQLSTATE exception code. '2F002' -modifying SQL-data not permitted. |