ある時、テーブル生成が伴うバッチ処理でエラーが発生していました。

調べてみると、 とても長いテーブル名 をつけようとしていて MySQL がエラーを返していたようです。


MySQL では、データベース名やテーブル名に上限が定められています。 ふだん意識することは少ないですが、当然のことですよね。

次に主要なものを引用します。

データベース名 64
テーブル名 64
カラム名 64
インデックス名 64
ビュー名 64

よく使うものは、大体 64 文字が上限っぽいですね。


MySQL のマニュアルは次をご覧ください。

MySQL Server
Identifier Length Limits (MySQL 8.0 Reference Manual)
https://dev.mysql.com/doc/refman/8.0/en/identifier-length.html

微妙なニュアンスを伝えようとして、ついつい長い名前になってしまうことって、ありますよね。


クソ長い名前、というと 『リーダブルコード』 の挿絵を思い出します。