仕事と晩飯とその他

日記です。

そして、解決へ

案の定、リレーションでひっかかっていた。基本だな。基本がなっとらん。

こうした問題を避けるためにもやはり主キーとしてのユニークIDは別途持つべきなのだろうか。つうか主キーが何の役に立つのか100%理解できていない自分に腹が立つ。

とにかく途中から「これはやっぱアレしかないベ」と思い出してはいたのだが、今さら大幅な変更に取り組むのが億劫で延ばし延ばしにしつつも問題は解決せず。しょうがないので思い切ってまったく新しく「アレ」を始めてみる。

思った通りの結果が一発で……。

もっと早くこうしていればよかった……。

毎日これの繰り返し。でもいちおう進んでます。

大きな山のふたつ(該当商品の事前処理と関連データの事前集計)は、細かい修正を残してほぼ完了。ロールバックができない仕組みになってしまうことに危惧を感じたが、帰りの電車で「常に条件を満たしていないデータの追加のみ」にしてしまえばそもそも削除が不要ということに気がついた。それだよ。

とは言うものの、当初の予定に無かったマスタの管理画面とか、「テーブル開いて修正してよ」ってわけにもいかんし、やっぱ作らないわけにはいかんだろうなあ。マスタはともかく、ランクの更新処理(手作業もあり)用フォームとか、考えるだけで憂鬱かも。

いや、これこそテーブルの設計からちゃんとやれば大丈夫だな。

昔作った複数のDBからテーブルやフォームを寄せ集めて手っ取り早く作ろうって考えはよかった。が、テーブルの設計がちゃんとできていないものを寄せ集めてしまったことで問題が発生している、というのが現状。そんな適当なのでも97だと動くこともあるようだが、2000だとまずダメ、みたいだ。

幸いなことにまだやり直せる。いくつかのテーブルは作り直しだな。それと、リレーションがどうこうは無関係な解決の方向へ向かっているのでそれはそれで進めよう。

ようやく家で作業できる状態になったので今度の土日はこれかな。その前に木曜はでるべんか。今日も来客二組。社内向けの資料も用意しなけりゃならん。これがいちばん憂鬱だ。