「とりあえず1テーブルで全部入れよう」で始めると、あとで全部作り直しになります
AIに「アプリを作って」と頼むと、最初のデータの入れ物(テーブル)を1つだけ作って、そこに全部の情報を詰め込んでしまうことがあります。
ユーザー名も、投稿内容も、コメントも、いいねの数も、全部同じ場所に入れる。動きます。むしろ最初は「シンプルで分かりやすい」とすら感じます。
任せること自体は問題ではありません。困るのは、そのテーブル1枚で本当に足りるのかを確かめずに、そのまま機能を増やし続けてしまうことです。
データの作り直しがなぜ厄介なのか。今回は、いちばんよくある入口──「とりあえず1テーブルにまとめる」を具体的に見ていきます。
なぜ最初は気づけないのか
理由は単純で、データが少ないうちは、テーブルを分けていなくても困らないからです。
たとえば投稿が数件、コメントも数十件程度の規模感なら、1つの表に全部並べてもそれなりに読めます。問題が起きるのは、同じ情報を何度も書き込むようになったときです。
たとえば「投稿ごとにコメントを何件かつける」という機能。テーブルを分けていないと、1件のコメントを保存するたびに、投稿のタイトルやユーザー名まで一緒にコピーして保存する形になりがちです。
最初のうちはこれでも動きます。表示も崩れません。だから気づかない。
実際に何が起きるか
これが崩れるのは、同じ情報を後から直したいときです。
投稿のタイトルを1文字直したいだけなのに、そのタイトルがコメントの数だけコピーされて保存されていたら、全部の場所を書き換えないと表示がバラバラになります。「新しいコメントだけ新タイトル、古いコメントは旧タイトルのまま」という状態が普通に起こります。
さらに厄介なのが、あとから「投稿ごとのコメント一覧」を数えたり並べ替えたりしたくなったときです。テーブルが分かれていれば「この投稿IDに紐づくコメントを取ってくる」で済みますが、1テーブルに全部混ざっていると、同じ情報が何度も重複した状態から、重複を無視して数え直す処理を後付けすることになります。ここでAIに頼んでも、既存データの重複をどう扱うかは人間が決めるしかない部分で、結局テーブルの分け直し=今あるデータの引っ越し作業が発生します。
何を知っておけば防げるか
覚えることは、実はそんなに多くありません。
「同じ情報を、別の場所にもう一度書き写していないか」を1つだけ確認する。それだけです。
- ユーザー名やタイトルのような「持ち主が1つに決まる情報」は、その持ち主のテーブルに1回だけ書く
- コメントのような「後から何個でも増えるもの」は、別のテーブルに分けて、どの投稿の話かを番号(ID)で紐づける
AIにテーブル設計を頼んだときも、「この列は他の行と重複しませんか?」と一言聞くだけで、この手の見落としには気づきやすくなります。動くコードが返ってきた後ではなく、設計の時点でこの質問をするのがポイントです。
面談なしで、今日から始められます
この講座は 未経験から Next.js + Supabase + Claude Code で Webアプリを公開するまで を全20セッションで体系化した教材付きプランです。無料相談を挟まず、申し込んだその日から教材で学習を始められます。AIが学習パートナーになって何度でも質問でき、つまずいた所だけチャットで直接サポートします。
- 今日から始める(教材完全版+月5,500円・チャット質問し放題・いつでも解約OK)→ https://menta.work/plan/20251?ref=menta-knowledge
- いきなりは不安な方へ:無料の教材体験版もあります(最初の数セッション分)→ プラン詳細をご覧ください

