というわけで、某所に通っています。

簡単に説明すると、最終的にはショッピングカートを作っちゃいましょう。というテーマ。
今までphpなんて触ったことがない人もいるので、結構刺激的な意見(質問)をされます。

「このエラーの意味は何ですか?」とか、「このエラーってなんぞや?」というのもある。

今はぜんぜんLAMP環境での開発関係はやってないんですけど、同じようなエラーを見て「あー!」っていうのがほとんど。
けれど、「ん?なんだ!?」というエラーもちらほら。

コマンドラインではやってないのもちょっと対応が厳しいという感じです。
(GUIベースの優秀なソフトを使っているため)
もっと言うと、半角スペースが入っているかどうかもわからないため。w

で、今週一番気になったのが、これ。
Q.int(11)の11って桁数じゃないの?
Q.MySQLで、ハイフン付きのデータベース名を扱う場合は?

これは本当に参りました。
どう説明したらいいのかがわからない。というのがあって、わかりやすく説明するのも大変。
逆に混乱させてしまう可能性もアリ。

A.int(11)の11って桁数じゃないの?
とりあえず、桁数なんだよ。というと、実際に挿入できません。と来た場合、バイト(b)の説明をするわけで。
けれど、はっきりこうだから、こう!って言えないんで、難しい世界です。

A.MySQLで、ハイフン付きのデータベース名を扱う場合は?
あと、ハイフン付きのデータベース名も最初わからなかった。

// m-floというデータベース名でデータベースを作りますよ。コマンド。
mysql> create database m-flo;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘-flo’ at line 1

となるわけだが、今までハイフンなんて使っていなかったので、全くこのエラーには遭遇していなかった。
けれど、ハイフン付きのデータベース名を付ける場合、

調べてみると、バッククォートでデータベース名を囲む必要があるんです。

こんな感じで。
mysql> create database `m-flo`;

あと、データベースを削除(drop)する場合も同様。

だから、私はこう言いました。
「アンダーバーの方がよくない?」

いや、ハイフンでもいいですよ。けど、そこをハイフンにする必要があるのか?とか、ハイフン入れたらバッククォート入れないといけないよとか。
アンダーバー入れればバッククォート必要ないよ。という状況なので、極力アンダーバー。いや、アンダーバーを使ってください。お願いします!って感じで、やってました。w

時間的な考えをすると、作業効率が落ちる。って言えるけど、”時間”よりも今は”基礎を覚える”だから、そういうことは言えないのです。

帰るときに一言言われました。
「月曜日はerrorばっかりで大変なことになってますから。」と。w

けれど、結構、いい刺激になるんですよね。焦っちゃうけど。w

From xxxYukihiroxxx

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.