謎エラーの解明&それを応用して……回
(・3・)〈どうも、『ゆるふわ椎茸』の異名を持つ男、やっ太郎です。
今日はちょっとした改良報告でございます。
経緯を説明するとですね……謎エラーを発見しましてですね……
作品を削除した時に、データベースに接続されなかった時に表示されるエラーが表示されたんですね。
(・3・)〈おおう!? 何でや!? 前にテストした時は正常に動いたのに……?
んで、実際にデータベース側を確認してみると、作品情報はきちんと削除されていたんですね。
(・3・)〈むむむ? 何でや……?
んで色々と調べたり、動作テストをしたり、歌ったり踊ったりして(?)原因を突き止めたんです。
大雑把に説明すると……
※元のプログラム
『①データベースに接続して作品情報を削除
②データベースに接続して各エピソードの情報を全て削除
③データベースに接続して各サブエピソードの情報を全て削除
④……』
みたいな感じだったんですが、問題は③の部分!! 今回削除した作品は、サブエピソードを書いてないので、サブエピソード自体が存在しなかったんですね。なのでプログラムを動かした際に……
① → OK!! データ消去完了!!
② → OK!! データ消去完了!!
③ → あれ? データベースに接続したけど消すべきデータが無いぞ? → エラー表示!!
みたいな感じで、③の部分に対してのエラーが出てたんですね。なので、データベース側を確認した際に、①と②は正常に行われているので、データベース上ではきちんと作品データが消去されているけど、消去時のユーザー画面に③に対してのエラー表示が出ていた。
という事だったみたいです。(※ちなみに過去のテストでエラーが出てなかったのは、削除した作品にサブエピソードが存在していたからみたいです)なので改修後のプログラムは、
※改修後
『①データベースに接続して作品情報を削除
②データベースに接続して『エピソードの数をカウントし、エピソードの数が1以上なら』各エピソードの情報を全て削除
③データベースに接続して『サブエピソードの数をカウントし、サブエピソードの数が1以上なら』各サブエピソードの情報を全て削除
④……』
と言う感じになりました。
(・3・)〈この改修をした事で、『消去する対象がデータベース上に存在する時だけ』情報消去が行われるようになり、『元から存在しない物を消去しようとして生じるエラー表示』が無くなりました。
で、原因が判明してプログラムを改修したんですけども……
(・3・)〈……ん? という事は、今回改修した仕組みを応用すれば……
と、いうわけで今回改修した仕組みを応用して、
(・3・)〈ブックマークした作品が、作者さんに削除・もしくは非公開にされた時に『この作品は削除、もしくは非公開に設定された可能性があります』と表示されるようになりましたーーー!!
↓
今回作った仕組みを応用して改修すべき箇所が幾つかありそうなので、片っ端から改修していこうと思います!!
(・3・)〈やったるでーーー!!




