在使用 SQL 的 PL/I 應用程式中使用主機結構陣列

在 PL/I 程式中,您可以定義主機結構陣列。

在這些範例中,下列為 true:

  • B_ARRAY 是包含項目 C1_VAR 及 C2_VAR的主機結構陣列名稱。
  • 無法限定 B_ARRAY。
  • B_ARRAY 只能與 FETCH 及 INSERT 陳述式的封鎖表單搭配使用。
  • B_ARRAY 中的所有項目都必須是有效的主變數。
  • C1_VAR 和 C2_VAR 在任何 SQL 陳述式中都不是有效的主變數。 結構不能包含中階結構。 A_STRUCT 不能包含維度屬性。
DCL 1 A_STRUCT,
      2 B_ARRAY(10),
        3 C1_VAR CHAR(20),
        3 C2_FIXED BIN(15) UNALIGNED;
 

從 CORPDATA.DEPARTMENT 表格,請執行下列動作:

 
DCL 1 DEPT(10),
      5 DEPTPNO CHAR(3),
      5 DEPTNAME CHAR(29) VAR,
      5 MGRNO CHAR(6),
      5 ADMRDEPT CHAR (3);
DCL 1 IND_ARRAY(10),
      5 INDS(4) FIXED BIN(15);
EXEC SQL
  DECLARE C1 CURSOR FOR
     SELECT *
       FROM CORPDATA.DEPARTMENT;
 
EXEC SQL
  FETCH C1 FOR 10 ROWS INTO :DEPT :IND_ARRAY;