Previous Topic: SQL DDL statementsNext Topic: Access Module Management Statements


SQL DML Statements

Dynamic SQL Statements

To execute an SQL DML statement dynamically (for example, through the Command Facility), a user requires the access privilege indicated in the following table or must own schema associated with the table-like object, if the database has been secured.

If a DELETE, UPDATE, or INSERT statement contains a query expression or subquery, additional privileges are required for the table-like objects referred to by the query expression or subquery. If a SELECT statement explicitly names a view, additional privileges are required.

Note: For complete documentation of privileges required to execute SQL DML statements, see the CA IDMS SQL Reference Guide.

Embedded SQL Statements

If the SQL DML statement is embedded in an application program and the database accessed is secured externally, the executing user must hold the applicable privileges on all tables accessed by the statement, whether directly or indirectly through a view.

If the SQL DML statement is embedded in an application program and the database accessed is secured internally, the executing user requires only EXECUTE privilege on the access module; the user inherits the necessary access privileges from the grantor of EXECUTE privilege for the purpose of executing the access module.

Statement

Privilege required

Resource type

Resource name

DELETE

DELETE

TABL

schema-name.table-name

INSERT

INSERT

TABL

schema-name.table-name

SELECT

SELECT

TABL

schema-name.table-name

UPDATE

UPDATE

TABL

schema-name.table-name