回答編集履歴

1

公式ドキュメントへのリンクを1つ追加しました。

2025/04/30 08:20

投稿

sk.exe
sk.exe

スコア1077

test CHANGED
@@ -18,3 +18,9 @@
18
18
  [Db2 for Linux, UNIX and Windows: 隠し列](https://www.ibm.com/docs/ja/db2/12.1.0?topic=concepts-hidden-columns)
19
19
 
20
20
  > 表列が暗黙的な隠し属性によって定義されると、明示的に参照されなければ、その列は使用できません。 例えば、**SELECT * 照会を表に対して実行した場合、暗黙的な隠し列は結果表に返されません。** 暗黙的な隠し列は、列名を指定できる場所ならどこででも、明示的な方法で参照が可能です。
21
+
22
+ [Db2 for z/OS: SELECT ステートメントによるデータの取り出し](https://www.ibm.com/docs/ja/db2-for-zos/13.0.0?topic=programs-retrieving-data-by-using-select-statement)
23
+
24
+ > SELECT * は、**動的 SQL およびビュー定義で使用する場合に最も適しています**。 静的SQLでSELECT * を使用できますが、**ホスト変数の互換性とパフォーマンスへの影響の可能性がある**ため、お勧めしません。 SELECT * が参照表に列を追加するとします。 その列の受信ホスト変数を定義しない場合、エラーが発生するか、追加列のデータが取得されない可能性があります。
25
+ >
26
+ > アスタリスクの代わりに、静的SELECT ステートメントに列名をリストすると、SELECT * の発生可能問題を回避できます。 また、受け取りホスト変数と結果表中の列の対応関係を知ることもできます。