経験値がないから、どういう型を使えばいいのかでとってもとっても迷うんですよねぇ……(後々影響しまくるし)。 今回は、登録日時・更新日時の場合です。 TIMESTAMP型かDATETIME型の比較 サポート範囲が違う(その結果、消費バイト数が違う)らしい。 のみならず、「コードが更新された時に自動的に現在時刻でTIMESTAMP型のカラムを更新できる」らしい(おお? しかしcurrent_timestampは1カラムだけ。 むー。 2037年なんてまだまだ先だからいいとも言えるけど、素直にDATETIME型を使うのがよさそう。 自動的にってのは楽でよさそうだけど、想定外の動作になりそうで怖いよ。 ▽TIMESTAMP型とDATETIME型(suusukeの日記) http://d.hatena.ne.jp/suusuke/20081119/1227094456 ▽MySQLでのTIMESTA
常識なのかもしれないが、コーディングしていて改めて気がついたのでメモ。 文字列の数字表現で”1234.56″といった感じのものを読んで整数なのか小数なのかをチェックする場合、マッチさせたいパターンは詳細なものから書く。 例えば以下のように書くと
バグの話 近々ふぁぼったーDBのInnoDB化を企てているので、それに伴いMySQL5.0.67(Tritonn)から、先日リリースされたばかりのMySQL5.5.3-m3に乗り換えてみた。RC(リリース候補)版ということで、GA版とほぼ変わらない品質と聞いたので、割と軽い気持ちでインストールしたんだけど、いきなりバグにハマった。 バグとは、DATETIME, TIMESTAMP, DATE, TIME型と文字列定数との結合でインデックスが使われない、というもの。 以下のような、date(DATE型)の結合しかしていないクエリでも、dateインデックスが使われず昇順フルテーブルスキャンされ、20秒くらい掛かった。 select date from STATUS force index(date) where date='2010-01-19' limit 10; この現象は、5.5.3,5
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く