Host Variable Data Type Declarations
The following tables list valid ALLBASE/SQL host variable data types for
each supported language. FIPS 127.1 standards compliant data types are
indicated with a YES. ALLBASE/SQL extensions to the standard are
indicated with a NO.
Table 2-3. ALLBASE/SQL FIPS 127.1 Compliant Data Type Declarations for C
------------------------------------------------------------------------------------------------
| | | |
| ALLBASE/SQL DATA TYPES | FIPS 127.1 | C DATA DECLARATIONS |
| | Compliant? | |
| | | |
------------------------------------------------------------------------------------------------
| | | |
| CHAR(1) | NO | char dataname; |
| | | |
| CHAR(n) | YES | char dataname[n+1]; |
| | | |
| VARCHAR(n) | NO | char dataname[n+1]; * |
| | | |
| SMALLINT | YES | short dataname; or |
| | | |
| | NO | short int dataname; |
| | | |
| INTEGER | NO | int dataname; or |
| | | |
| | NO | long int dataname; or |
| | | |
| | YES | long dataname; |
| | | |
| REAL | YES | float dataname; |
| | | |
| FLOAT(1..24) | NO | float dataname; |
| | | |
| FLOAT(25..53) | NO | double dataname; |
| | | |
| DOUBLE PRECISION | YES | double dataname; |
| | | |
| BINARY | NO | sqlbinary dataname; |
| | | |
| | NO | sqlbinary dataname[n]; |
| | | |
| VARBINARY | NO | sqlvarbinary dataname[m]; ** |
| | | |
| DECIMAL | NO | double dataname; |
| | | |
| DATE | NO | char dataname[11]; |
| | | |
| TIME | NO | char dataname[9]; |
| | | |
| DATETIME | NO | char dataname[24]; |
| | | |
| INTERVAL | NO | char dataname[21]; |
| | | |
------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
| |
| * This declaration is for non-dynamic statements only. Refer to the chapter, "Using |
| Dynamic Operations," in the ALLBASE/SQL C Application Programming Guide for a |
| description of how to use VARCHAR dynamically. ** See the "BINARY Data" section |
| in the ALLBASE/SQL C Application Programming Guide for the calculation of m. |
| |
------------------------------------------------------------------------------------------
Table 2-4. ALLBASE/SQL FIPS 127.1 Compliant Data Type Declarations for COBOL
-----------------------------------------------------------------------------------------------
| | | |
| SQL DATA TYPES | FIPS 127.1 | COBOL DATA DESCRIPTION ENTRIES |
| | Compliant? | |
| | | |
-----------------------------------------------------------------------------------------------
| | | |
| CHAR(n) | YES | 01 DATA-NAME PIC X(n). |
| | | |
| VARCHAR(n) | NO | 01 GROUP-NAME. 49 LENGTH-NAME PIC S9(9) |
| | | COMP. 49 VALUE-NAME PIC X(n). |
| | | |
| BINARY | NO | 01 DATA-NAME PIC X(n). |
| | | |
| VARBINARY(n) | NO | 01 GROUP-NAME. 49 LENGTH-NAME PIC S9(9) |
| | | COMP. 49 VALUE-NAME PIC X(n). |
| | | |
| SMALLINT | NO | 01 DATA-NAME PIC S9(4) COMP. |
| | | |
| INTEGER | YES | 01 DATA-NAME PIC S9(9) COMP. |
| | | |
| FLOAT | NO | 01 DATA-NAME PIC S9(p-s)V9(s) COMP-3. |
| | | |
| DECIMAL(p,s) | NO | 01 DATA-NAME PIC S9(p-s)V9(s) COMP-3. or |
| | | |
| | YES | 01 DATA-NAME PIC S9(p-s)V9(s) [USAGE IS] DISPLAY |
| | | [SIGN IS] LEADING SEPARATE [CHARACTER]. |
| | | |
| DATE | NO | 01 DATA-NAME PIC X(10). * |
| | | |
| TIME | NO | 01 DATA-NAME PIC X(8). * |
| | | |
| DATETIME | NO | 01 DATA-NAME PIC X(23). * |
| | | |
| INTERVAL | NO | 01 DATA-NAME PIC X(20). * |
| | | |
-----------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
| |
| * Applies to default format specification only. |
| |
------------------------------------------------------------------------------------------
Table 2-5. ALLBASE/SQL FIPS 127.1 Compliant Data Type Declarations for FORTRAN
-----------------------------------------------------------------------------------------------
| | | |
| SQL DATA TYPES | FIPS 127.1 | FORTRAN DATA DECLARATIONS |
| | Compliant? | |
| | | |
-----------------------------------------------------------------------------------------------
| | | |
| CHAR(1) | NO | CHARACTER DataName |
| | | |
| CHAR(n) | YES | CHARACTER*n DataName |
| | | |
| VARCHAR(n) | NO | CHARACTER*n DataName * |
| | | |
| SMALLINT | NO | INTEGER*2 DataName |
| | | |
| INTEGER | YES | INTEGER DataName |
| | | |
| REAL | YES | REAL DataName or |
| | | |
| | NO | REAL*4 DataName |
| | | |
| FLOAT(1..24) | NO | REAL DataName or |
| | | |
| | NO | REAL*4 DataName |
| | | |
| FLOAT(1..53) | NO | DOUBLE PRECISION DataName or |
| | | |
| | NO | REAL*8 DataName |
| | | |
| DOUBLE PRECISION | YES | DOUBLE PRECISION DataName or |
| | | |
| | NO | REAL*8 DataName |
| | | |
| BINARY | NO | CHARACTER DataName or |
| | | |
| | NO | CHARACTER*n DataName |
| | | |
| VARBINARY | NO | CHARACTER*n DataName |
| | | |
| DECIMAL | NO | DOUBLE PRECISION DataName or |
| | | |
| | NO | REAL*8 DataName |
| | | |
| DATE | NO | CHARACTER*10 DataName |
| | | |
| TIME | NO | CHARACTER*8 DataName |
| | | |
| DATETIME | NO | CHARACTER*23 DataName |
| | | |
| INTERVAL | NO | CHARACTER*20 DataName |
| | | |
-----------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
| |
| * This declaration is for non-dynamic statements only. |
| |
------------------------------------------------------------------------------------------
Table 2-6. ALLBASE/SQL FIPS 127.1 Compliant Data Type Declarations for Pascal
-----------------------------------------------------------------------------------------------
| | | |
| SQL DATA TYPES | FIPS 127.1 | PASCAL TYPE DESCRIPTION |
| | Compliant? | |
| | | |
-----------------------------------------------------------------------------------------------
| | | |
| CHAR(1) | NO | DataName : char; |
| | | |
| CHAR(n) | NO | DataName : array [1..n] of char; or |
| | | |
| | YES | DataName : packed array [1..n] of char; |
| | | |
| VARCHAR(n) | NO | DataName : string[n]; |
| | | |
| BINARY(1) | NO | DataName : char; |
| | | |
| BINARY(n) | NO | DataName : array [1..n] of char;or |
| | | |
| | NO | DataName : packed array [1..n] of char; |
| | | |
| VARBINARY(n) | NO | DataName : string[n]; |
| | | |
| SMALLINT | NO | DataName : smallint; |
| | | |
| INTEGER | YES | DataName : integer; |
| | | |
| REAL | YES | DataName : real; |
| | | |
| FLOAT | NO | DataName : longreal; |
| | | |
| DECIMAL | NO | DataName : longreal; |
| | | |
| DATE | NO | DataName : packed array[1..10] of char; * |
| | | |
| TIME | NO | DataName : packed array[1..8] of char; * |
| | | |
| DATETIME | NO | DataName : packed array[1..23] of char; * |
| | | |
| INTERVAL | NO | DataName : packed array[1..20] of char; * |
| | | |
-----------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
| |
| * Applies to default format specification only. |
| |
------------------------------------------------------------------------------------------