mysql:1978
From: とみたまさひろ <とみたまさひろ <tommy@xxxxxxxxxx>>
Date: Mon, 08 May 2000 23:53:33 +0900
Subject: [mysql 01978] Re: AUTO_INCREMENT
とみたです。 At Mon, 08 May 2000 23:37:16 +0900, moeru@xxxxxxxxxx (moeru) wrote: > 登録したユーザーのusersテーブルのデーターを頻繁に参照して変更する場合、 > > たとえば、 id INT NOT NULL AUTO_INCREMENT, > とやった場合 > ユーザーIDが3の人のデーターを削除すると > AUTO_INCREMENTで > ユーザーID4の人が3に自動的に変更されると言うことなのでしょうか? そんなことはありません。AUTO_INCREMENT は自動的に番号をつけてくれるとい うだけです。 > ユーザーIDが永遠に同じ番号じゃないとしたら > ユーザーIDで検索することが無く、かつusernameで検索、変更する場合が多い場合、 > もしかしたら、usersテーブルのid は必要ないのかな?って思ったのです。。 > > id は、テーブルのデーターを一意にするためだけのものと考えて良いのでしょうか? ん〜、id をどのような用途に使うかはデータベース設計者なので、私はなんと も言えませんが…(^^; > PRIMARY KEY (id,username) だと、(1,"hoge"), (2, "fuga"), (3, "hoge"), (1, "fuga") というレコードが 作れてしまうと思うんですが、これは多分意図してないですよね? 「id と usrename の組合せが一意である」じゃなくて「id と username それぞ れ一意である」ようにしたいのなら、 PRIMARY KEY(id), UNIQUE (username) とした方がいいと思います。 -- とみたまさひろ <tommy@xxxxxxxxxx>
1977 2000-05-08 23:37 [<moeru@xxxxxxxxxx> ] AUTO_INCREMENT -> 1978 2000-05-08 23:53 ┗[とみたまさひろ <tomm] 1979 2000-05-09 20:24 ┗[<moeru@xxxxxxxxxx> ] 1980 2000-05-09 21:07 ┗[とみたまさひろ <tomm] 1982 2000-05-09 21:39 ┗[<moeru@xxxxxxxxxx> ]