「name には 20 バイトまでの可変長文字列」とvarchar(20)を設定していますが、バイト数と文字数の関係が混乱してわからなくなりました。
varchar(20)というのは20文字ということでしょうか?20バイトということでしょうか?
全角文字は2バイトと認識していましたが、試しに半角英数字と全角日本語で20文字、21文字それぞれ入力したところどちらも20文字では問題なく、21文字はwarningが出て20文字になってしまいました。
これは半角も全角もどちらも1バイトということなのでしょうか?
調べていると日本語は3バイトや4バイトという記述もあり、混乱しています。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?