• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:tableをつくれない)

tableをつくれないエラーの対処方法

このQ&Aのポイント
  • MySQLでCREATE TABLE文を実行する際に、指定したキーの長さが長すぎるエラーメッセージが表示される場合の対処方法について説明します。
  • エラーメッセージ「#1071 - Specified key was too long; max key length is 767 bytes」が表示される場合は、指定したキーの長さが767バイトを超えているためエラーが発生しています。
  • このエラーは、utf8mb4などの文字セットを使用している場合に発生しやすく、キーの長さを短くするか、文字セットを変更することで解決できます。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>`keywords` VARCHAR( 511 ) CHARACTER SET utf8 MySQLのvarcharはバイト単位ではなく文字単位ですから 256文字以上の3バイト文字を指定すると767バイトをこえるので unique設定できません。上限255文字だとおもってください。 (接頭辞に2バイトつかうので255*3+2=767バイト) そもそも長すぎるvarcharを連発していますがもう少しきちんと 設計をしたほうがよいのでは?

その他の回答 (1)

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

>#1071 - Specified key was too long; max key length is 767 bytes キーの最大長は767バイトだと言ってます。 >UNIQUE ( >`bc_guid` , >`bc_wbs` , >`keyword_h1_url` , >`keywords` , >`description` >) 明らかに767バイトを超えてますね。

関連するQ&A