MySQLデータベースにデータを挿入するとき、多くの場合、現在の日時を保存する必要があります。私はいつも自分の日時をUTC時間として保存したいと思っています。
現在のUTC時刻を保存するにはどうすればよいですか?組み込み関数はありますか、それともNOW()にオフセットを適用する必要がありますか?
MySQLではUNIX_TIMESTAMP()
、すべての種類の日付と時刻の値を提供でき、要求に固有のを使用できますUTC_TIMESTAMP
。これは、関数が文字列で使用されているか、文字列で使用されているかに応じてUTC_TIMESTAMP()
、現在のUTC日付と時刻を値YYYY-MM-DD HH:MM:SS
または形式で返します。YYYYMMDDHHMMSS.uuuuuu
数値コンテキスト。
例:
mysql> SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0;
-> '2003-08-14 18:08:04', 20030814180804.000000
MySQLの日付/時刻関数に関する詳細はここで説明されています:http: //dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_unix-timestamp
ファイル内のtimezone
プロパティを更新できます。my.cnf
[mysqld_safe]
timezone = UTC