[前][次][番号順一覧][スレッド一覧]

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]