mysql:4300
From: Tatsuhiko Miyagawa <Tatsuhiko Miyagawa <miyagawa@xxxxxxxxxx>>
Date: Wed, 12 Sep 2001 11:41:27 +0900
Subject: [mysql 04300] Re: INSERT 時に 9 月 9 日問題発生
宮川です。 On Wed, 12 Sep 2001 11:26:05 +0900 sumi@xxxxxxxxxx wrote: > MySQL Ver 11.15 Distrib 3.23.40, for pc-linux-gnu (i686) をDebian上で使 > 用しているのですが、INSERT時に9月9日問題と思われる異常動作が発生しました。 > 上記のように2001/09/12 11:35:55が2000/10/01 02:21:55になってしまいます。 > ただし、 > mysql> INSERT INTO table1 values ( '2001/09/12 11:35:55' ); > の形ならば、正常にINSERTできました。 > UNIX_TIMESTAMPからTIMESTAMPへの型変換がうまくいっていないようなのですが、 > これは件の9月9日問題にかかわるようです。 これは正常な動作です。そもそも TIMESTAMP には、epoch からの 秒数を INSERT するものではないですし、入力での自動型変換はサ ポートしていないでしょう。 1e9 とは関係なく、それより以前の秒数をINSERTしても、失敗します。 http://www.mysql.com/doc/D/A/DATETIME.html に書かれているようなフォーマットでINSERTする必要があります。 UNIX timestamp から time format に明示的に変換させるには、 FROM_UNIXTIME() という関数が使えます。 INSERT INTO table1 VALUES (FROM_UNIXTIME(1000000000)); -- Tatsuhiko Miyagawa mailto:miyagawa@xxxxxxxxxx
4299 2001-09-12 11:26 [<sumi@xxxxxxxxxx> ] INSERT 時に 9 月 9 日問題発生 -> 4300 2001-09-12 11:41 ┣[Tatsuhiko Miyagawa <] 4302 2001-09-12 11:56 ┃┗[<sumi@xxxxxxxxxx> ] 4309 2001-09-12 21:18 ┃ ┗[とみたまさひろ <tomm] 4303 2001-09-12 12:21 ┗[Sugawara Hajime <sug]