8章−1

(1) 実行結果を参考に次のようなSQLを作成しなさい。
・接頭辞と初期値と回数を指定できる関数f09_1を作成する。
・数字の桁数は4桁とし、範囲を越える場合は異常終了する。
・先立って必要なものがあればそれも作成する。名前などは自分で決める。

odexer=> \i 09_1_1.sql
CREATE TYPE
CREATE FUNCTION

odexer=> select * from f09_1('DATA_', 101, 10);
 num |   data
-----+-----------
 101 | DATA_0101
 102 | DATA_0102
 103 | DATA_0103
 104 | DATA_0104
 105 | DATA_0105
 106 | DATA_0106
 107 | DATA_0107
 108 | DATA_0108
 109 | DATA_0109
 110 | DATA_0110
(10 rows)

odexer=> select * from f09_1('データ', 91, 20);
 num |    data
-----+------------
  91 | データ0091
  92 | データ0092
  93 | データ0093
  94 | データ0094
  95 | データ0095
  96 | データ0096
  97 | データ0097
  98 | データ0098
  99 | データ0099
 100 | データ0100
 101 | データ0101
 102 | データ0102
 103 | データ0103
 104 | データ0104
 105 | データ0105
 106 | データ0106
 107 | データ0107
 108 | データ0108
 109 | データ0109
 110 | データ0110
(20 rows)

odexer=> select * from f09_1('DATA_', 9950, 100);
ERROR:  範囲を越えました!