ALLOCATE CONNECTION HANDLE (Allocate connection handle)
Function
ALLOCATE CONNECTION HANDLE allocates a connection handle to be used by a UAP in an environment where a multi-connection function is used.
Format
ALLOCATE CONNECTION HANDLE :PDCNCTHDL-type-variable,
:return-code-receiving-variable
[, {:connection-PDHOST-variable
:connection-PDNAMEPORT-variable
|:environment-variable-group-name-variable}]
Operands
Specifies an embedded variable that was declared as a PDCNCTHDL-type.
Specifies an embedded variable that was declared as an INT type.
The following values are returned to the return code receiving variable:
Specifies an embedded variable that was declared as a CHAR type (area size: 511 bytes).
Specifies an embedded variable that was declared as a SMALLINT type.
Specifies an embedded variable that is declared as a CHAR type (area length of 256 bytes).
In the UNIX environment, specify the file name of the regular file in which the environment variable is coded in terms of an absolute path name (a maximum of 256 bytes including the null character).
drive-name\.ini"HiRDB Version 8 UAP Development Guide
Common rules
Note
Connection handles that have been allocated are not released when a DISCONNECT statement is issued. To release a connection handle, a FREE CONNECTION HANDLE statement must be issued.
Example
EXEC SQL BEGIN DECLARE SECTION;
PDCNCTHDL CnctHdl;
long AlchdlRtn;
EXEC SQL END DECLARE SECTION;
EXEC SQL ALLOCATE CONNECTION HANDLE :CnctHdl,
:AlchdlRtn;
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
BEGIN DECLARE SECTION
END-EXEC.
01 CNCTHDL SQL TYPE IS PDCNCTHDL.
01 ALCHDLRTN PIC S9(9) COMP.
EXEC SQL
END DECLARE SECTION
END-EXEC.
:
PROCEDURE DIVISION.
:
EXEC SQL
ALLOCATE CONNECTION HANDLE :CNCTHDL,
:ALCHDLRTN;
END-EXEC.
EXEC SQL BEGIN DECLARE SECTION;
PDCNCTHDL CnctHdl;
long AlchdlRtn;
char CnctHost[31];
short CnctPort;
EXEC SQL END DECLARE SECTION;
strcpy(CnctHost,"HOST01");
EXEC SQL ALLOCATE CONNECTION HANDLE :CnctHdl,
:AlchdlRtn,
:CnctHost,
:CnctPort;
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
BEGIN DECLARE SECTION
END-EXEC.
01 CNCTHDL SQL TYPE IS PDCNCTHDL.
01 ALCHDLRTN PIC S9(9) COMP.
01 CNCTHOST PIC X(31).
01 CNCTPORT PIC S9(4) COMP.
EXEC SQL
END DECLARE SECTION
END-EXEC.
:
PROCEDURE DIVISION.
:
MOVE 'HOST01' & X'00' TO CNCTHOST.
EXEC SQL
ALLOCATE CONNECTION HANDLE :CNCTHDL,
:ALCHDLRTN,
:CNCTHOST,
:CNCTPORT;
END-EXEC.
EXEC SQL BEGIN DECLARE SECTION;
PDCNCTHDL CnctHdl;
long AlchdlRtn;
char GroupName[31];
EXEC SQL END DECLARE SECTION;
strcpy(GroupName,"HRD01");
EXEC SQL ALLOCATE CONNECTION HANDLE :CnctHdl,
:AlchdlRtn,
:GroupName;
DATA DIVISION.
WORKING-STORAGE SECTION.
EXEC SQL
BEGIN DECLARE SECTION
END-EXEC.
01 CNCTHDL SQL TYPE IS PDCNCTHDL.
01 ALCHDLRTN PIC S9(9) COMP.
01 GROUPNAME PIC X(31).
EXEC SQL
END DECLARE SECTION
END-EXEC.
:
PROCEDURE DIVISION.
:
MOVE 'HRD01' & X'00' TO GROUPNAME.
EXEC SQL
ALLOCATE CONNECTION HANDLE :CNCTHDL,
:ALCHDLRTN,
:GROUPNAME
END-EXEC.