非互換
FUJITSU Enterprise Postgres 13では、「elif」文が正しく動作されるようになります。
「ifdef/ifndef」の条件が満たされるかどうか問わず、「elif」文の判断が実施されます。
[例]
000000 EXEC SQL ifdef DEF1 END-EXEC. 000000 操作(1). 000000 EXEC SQL elif DEF2 END-EXEC. 000000 操作(2). 000000 EXEC SQL else END-EXEC. 000000 操作(3).
「DEF1」および「DEF2」が真の場合、「操作(1)」と「操作(2)」の両方が実行されます。
「ifdef/ifndef」の条件が満たされる場合、「elif」文の判断が実施されません。
[例]
000000 EXEC SQL ifdef DEF1 END-EXEC. 000000 操作(1). 000000 EXEC SQL elif DEF2 END-EXEC. 000000 操作(2). 000000 EXEC SQL else END-EXEC. 000000 操作(3).
「DEF1」および「DEF2」が真の場合、「操作(1)」だけが実行されます。
対処方法
既存のアプリケーションを確認し、elif文が正しく動作するように修正してください。