汎用系の設計ってこういうのなのか?

とあるテーブルの設計を見ると、 char(40) なカラムが十数個あった。カラム名は同じ文字列+連番。

対応する画面の設計を見る。該当するテキストフィールドはひとつしかなかった。

プロジェクトのサブリーダー的なヒトに確かめてみると、思ったとおり、テキストフィールドの内容をDBへ保存するときは 40 バイトずつ切り分けて、また読み込むときは十数個のカラムから取り出したデータを繋げて表示する、とのことだった。

ちなみに使用している型は number と char しかない。 varchar すらテーブル定義書に存在しない。

このプロジェクトは汎用系からオープン系への replace 案件。DB設計をしているのは、「あまりPC系はわからない」と言い切るようなお偉いさん。汎用系には1カラムあたりのサイズ制限がずいぶんと厳しいものもあったのだろうか。そういう文化だったのだろうか。わたしには汎用系がわからないから相容れない。なかなか。

とりあえず、 Oracle 10g が泣くんじゃないかな。