If you want more than one database connection in your application, you can either use multiple SQLCAs or you can use a single SQLCA to manage the connections.
Each SQLCA used in your program must be initialized with a call to db_init and cleaned up at the end with a call to db_fini.
See db_init function.
The embedded SQL statement SET SQLCA is used to tell the SQL preprocessor to use a specific SQLCA for database requests. Usually, a statement such as the following is used at the top of your program or in a header file to set the SQLCA reference to point at task specific data:
EXEC SQL SET SQLCA 'task_data->sqlca';
This statement does not generate any code and thus has no performance impact. It changes the state within the preprocessor so that any reference to the SQLCA will use the given string.
For more information about creating SQLCAs, see SET SQLCA statement [ESQL].
As an alternative to using multiple SQLCAs, you can use a single SQLCA to manage more than one connection to a database.
Each SQLCA has a single active or current connection, but that connection can be changed. Before executing a command, use the SET CONNECTION statement to specify the connection on which the command should be executed.
See SET CONNECTION statement [Interactive SQL] [ESQL].