- ベストアンサー
MySQLでvarcharに先頭ゼロをセットしたい
いつも参考にさせてもらっています。 MySQL初心者ですが、よろしくお願いいたします。 varchar(50)のpos列に下記のようにデータの更新をかけます。 UPDATE t_collo SET pos="001110000" データベースを確認すると実際には"1110000"となって、先頭の ゼロがなくなっています。 恐らく基本的なところかと思うのですが、グーグル先生に聞いても 当方の力量不足なのか、よくわかりませんでした。 ご教示いただけますと助かります。
- みんなの回答 (1)
- 専門家の回答
お礼
今、MySQL Workbenchから直接下記のSQLを発行してみました。 update t_collo set pos='001110000' where id=1 すると、やっぱりpos列は1110000となっていました。 やはりMySQL側の問題なのでしょうか? MySQLは初めてなので、どうもよくわかりません。 どうか、よろしくお願い申しあげます。
補足
yambejp様 早速のご回答ありがとうございます。 質問のしかたがまずかったですね。 申し訳ありませんでした。 該当のSQLはPHPから発行しております。 yambejp様のおっしゃるようなら、PHP側の問題となりますね。 PHPでは以下のように書いています。 $sql = "update t_collo set pos=\"".$arr[$i]."\" where id=".$id $arr[$i]に配列変数として'001110000' が格納されています。 配列はダブルクォーテーションで囲ってますので、文字列として SQLを作っています。 print $sql で確認をしても、 update t_collo set pos='001110000' where id=1 となっていました。 てっきりMySQL側の設定かと思ったのですが、、、