- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:インデックスキーを設定するとKeyがMULに。)
MySQLのインデックスキーの設定による問題
このQ&Aのポイント
- MySQLのインデックスキーを設定するとプライマリーキーが設定されてしまう問題が発生しています。
- phpMyAdminを使用している場合、テーブルのインデックスキーを設定するとMULという表示が出てしまうことがあります。
- テキスト型のフィールドにインデックスを追加する方法も試してみましたが、同様の問題が発生しています。なぜMULになるのか、また解決策はあるのか教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> ここでMULという文字が出てきて調べてみると、 > プライマリーキーの重複を表す文字で、 > インデックスを設定したはずなのに > プライマリーキーが設定されてしまいました。 これはたぶん勘違いです。MULTI VALUE(多値)の意味でユニークインデックスではないという意味ではないでしょうか。 通常のINDEXは重複値を許すので「MUL」が表示されるのが正常な状態だと思います。
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.3
補足や回答で書いた内容を、別の質問でするなら 元の質問は閉じてください
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
>いっぱい選択肢がありますが、これらは1つ1つに対してフィールドを作って >インデックスキーを設定して検索させているのでしょうか。 普通に設計するなら、方法は2つ ひとつは、一つ一つをフィールドとして管理する メリットは一覧にしやすいので視認性が高く、構造が簡単なのでメンテナンス性も高い デメリットは拡張性が低く、検索条件のクエリーも複雑になりがち もうひとつは、これらの条件をまとめて条件フィールドとして 別テーブルで管理する メリット・デメリットは上記の逆 プログラムなどで結果を表示するなら後者の方が楽、SQLにあまりくわしくないなら 前者でも仕方ないかな・・・のレベル
質問者
お礼
参考になります。ありがとうございます。 phpから利用する目的の効率的なデータベースの活用 を学べるような参考書はありますか?
お礼
ありがとうございます。 そうだったのですか、私の読み間違いだったかもしれません。 余談ですが、 http://ieurikai.com/%E9%95%B7%E9%87%8E%E7%9C%8C/%E4%B8%AD%E5%8F%A4%E4%B8%80%E6%88%B8%E5%BB%BA%E3%81%A6/%E9%A3%AF%E7%94%B0%E5%B8%82/%E4%B8%8A%E6%AE%BF%E5%B2%A1 こちらのサイトに「詳細条件を開閉する」というボタンがあり、 押すといっぱい選択肢がありますが、これらは1つ1つに対してフィールドを作って インデックスキーを設定して検索させているのでしょうか。