Access to databases and data sets

CICS® supports access to external data in Db2® and DL/I databases and in VSAM and BDAM data sets.

Figure 1 shows you the resources that you can access from a CICS environment. A single CICS task can use Db2 tables, IMS databases, and CICS-managed local or remote resources (for example, VSAM files).

Figure 1. Resources you can access from a CICS environment
The content of this figure is described in the preceding paragraph.
Access to Db2 databases
CICS programs can use SQL statements to access data in Db2 databases. Access to Db2 uses the CICS Db2 attachment facility.
Access to DL/I databases
CICS programs can use the DL/I command-level interface and the call level-interface to access data in DL/I databases. Access to DL/I databases uses Database Control (DBCTL).
Note: The CICS-Db2 and the CICS-DBCTL interfaces are similar in that they both use the task-related user exit interface, and have a two-phase commit process. However, they differ in a number of respects. For example, CICS supports DBCTL and remote DL/I, and must determine at PSB schedule time which of them is being used.
Access to VSAM and BDAM data sets
CICS programs can use the CICS application programming interface to read and write data stored in data sets that are managed by VSAM (virtual storage access method) and BDAM (basic direct access method).

An application program does not refer directly to a data set; it refers to a file, which is a CICS resource that is mapped to a data set by a resource definition.

You can use shared data tables to provide efficient access to VSAM key-sequenced data sets. A data table is a file that has records are held in main storage; a shared data table is a data table that is accessible to more than one CICS region.

Access to non-SQL databases
The use of non-SQL document database MongoDB Java™ Driver is supported from Java applications deployed within the Liberty JVM server.