The following list describes the variable declaration syntax that the SQL precompiler supports in PL/I: o Declarations Declarations can include only the following PL/I data types: - CHARACTER CHARACTER can be abbreviated as CHAR. - CHARACTER VARYING CHARACTER VARYING can be abbreviated as CHAR VAR. - Date-time data types (Precompiler Date-Time Data Mapping lists these data types.) - TINYINT TINYINT is FIXED BINARY(7). - FIXED BINARY, FIXED DECIMAL BINARY can be abbreviated as BIN, and DECIMAL can be abbreviated as DEC. Scale factors are not allowed on FIXED BINARY declarations. - FLOAT BINARY, FLOAT DECIMAL - SQL_DATE, SQL_DATE_ANSI, SQL_DATE_VMS - SQL_TIME, SQL_TIMESTAMP - SQL_INTERVAL (DAY TO SECOND) Use this data type for variables that represent the difference between two dates or times. (Precompiler Date- Time Data Mapping lists all the supported INTERVAL data types.) - DECIMAL data type is converted to FIXED - NUMERIC data type is converted to PACKED o Storage class attributes Any of the storage class attributes (BASED, AUTOMATIC, DEFINED, STATIC, variable, EXTERNAL, and INTERNAL) is allowed. The BASED attribute declarations must include a location reference. o INITIAL attribute o Structures Structures are allowed without restriction. o Arrays Arrays are permitted only for declarations of indicator arrays. Although you can use any data type for indicator array elements, Oracle Rdb recommends that you declare them as INTEGER variables. Multidimension array items are not supported. Arrays of structures are not supported. Arrays that are in a group that is itself an array are not supported. Dynamic-sized arrays are not supported.