10代と話して驚いたこと

Auto_incrementを設定して値をinsertしていくと1、2、3とインクリメントされると思います。
ここで、2のレコードを削除して、その後、値をinsertすると4のレコードに値が入力されると思います。
これを4ではなく2のレコードへinsertするにはコードで指定するしかないのでしょうか。
ご存知の方、宜しくお願いします。

A 回答 (1件)

結論から言えば「そんな無意味なことをやるようにはSQLはできていない」


ということ。

本来のデータ管理からいって、データの削除というものはほとんどおこらないもの。
かりに削除するときは削除フラグをつけておくなどして「削除されたデータ」を
のこしておくもんです。
したがってオートインクリメントで抜け番号というのはありえません。

だいたい、抜け番号をうめてどうしたいのでしょうか?
カウンタとしてつかう?・・・それならcount(*)するだけで十分だし
オートインクリメントした行というのはデータがユニークであることだけが
重要なので、番号が抜けてるとかどうでもいいと思います
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す


おすすめ情報