私はいつも、なぜ 始める現在のデータベースのタイムゾーンを表示する mysql> "%time_zone%"のような変数を表示します。 +------------------+--------+ | 変数名 | 値 | +------------------+--------+ | システムタイムゾーン | CST | | タイムゾーン | +08:00 | +------------------+--------+ セット2列(0.30秒) テーブル構造を表示 mysql> desc timestamp_test; +--------------+-----------+------+-----+---------+----------------+ | フィールド | タイプ | Null | キー | デフォルト | 追加 | +--------------+-----------+------+-----+---------+----------------+ | id | int | NO | PRI | NULL | auto_increment | | created_time | datetime | YES | | NULL | | | created_at | タイムスタンプ | YES | | NULL | | +--------------+-----------+------+-----+---------+----------------+ 3 列セット (0.26 秒) データの挿入 mysql> timestamp_test(created_time, created_at) に値('2020-12-09 08:00:00', '2020-12-09 08:00:00') を挿入します。 クエリは正常、1 行が影響を受けました (0.22 秒) mysql> timestamp_test から * を選択します。 +----+---------------------+---------------------+ | id | 作成日時 | 作成日時 | +----+---------------------+---------------------+ | 1 | 2020-12-09 08:00:00 | 2020-12-09 08:00:00 | +----+---------------------+---------------------+ セット内の1行(0.06秒) 今回は正しいようなので、タイムゾーンを変更して再度データを挿入してみます。 mysql> タイムゾーンを "+00:00" に設定します。 クエリは正常、影響を受けた行は 0 行 (0.03 秒) mysql> timestamp_test(created_time, created_at) に値('2020-12-09 08:00:00', '2020-12-09 08:00:00') を挿入します。 クエリは正常、1 行が影響を受けました (0.03 秒) mysql> タイムゾーンを "+08:00" に設定します。 クエリは正常、影響を受けた行は 0 行 (0.04 秒) もう一度データを確認してください。挿入された 2 つの mysql> timestamp_test から * を選択します。 +----+---------------------+---------------------+ | id | 作成日時 | 作成日時 | +----+---------------------+---------------------+ | 1 | 2020-12-09 08:00:00 | 2020-12-09 08:00:00 | | 2 | 2020-12-09 08:00:00 | 2020-12-09 16:00:00 | +----+---------------------+---------------------+ セットに2行(0.06秒) 実際に保存されたタイムスタンプを見てみましょう。次に、タイムゾーンを変更すると、フィールドの時間は変更されていますが、元のタイムスタンプのデータは変更されていないことがわかります。 mysql> timestamp_test から unix_timestamp(created_at) を * として選択します。 +----+---------------------+---------------------+----------------------------+ | id | created_time | created_at | unix_timestamp(created_at) | +----+---------------------+---------------------+----------------------------+ | 1 | 2020-12-09 08:00:00 | 2020-12-09 08:00:00 | 1607472000 | | 2 | 2020-12-09 08:00:00 | 2020-12-09 16:00:00 | 1607500800 | +----+---------------------+---------------------+----------------------------+ セットに2行(0.06秒) mysql> タイムゾーンを "+00:00" に設定します。 クエリは正常、影響を受けた行は 0 行 (0.09 秒) mysql> "%time_zone%"のような変数を表示します。 +------------------+--------+ | 変数名 | 値 | +------------------+--------+ | システムタイムゾーン | CST | | タイムゾーン | +00:00 | +------------------+--------+ セットに2行(0.08秒) mysql> timestamp_test から unix_timestamp(created_at) を * として選択します。 +----+---------------------+---------------------+----------------------------+ | id | created_time | created_at | unix_timestamp(created_at) | +----+---------------------+---------------------+----------------------------+ | 1 | 2020-12-09 08:00:00 | 2020-12-09 00:00:00 | 1607472000 | | 2 | 2020-12-09 08:00:00 | 2020-12-09 08:00:00 | 1607500800 | +----+---------------------+---------------------+----------------------------+ セット2行(0.18秒)
上記は、MySQL タイムスタンプがタイムゾーンの問題を無視できる理由の詳細です。タイムゾーンを無視する MySQL タイムスタンプの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: HTML Webページの例を使用してヘッドエリアコードの意味を説明する
>>: Dockerはコンテナに入るためにnsenterツールを使用する
HTTPS ウェブサイトの構築コストが下がるにつれて、ほとんどのウェブサイトが HTTPS プロトコ...
目次MySQL 制約操作1. 非ヌル制約2. ユニーク制約3. 主キー制約4. 外部キー制約5. カ...
私が現在の仕事の面接を受けたとき、リーダーが真剣にこう言っていたのを覚えています。「今の世の中はイン...
EXPLAIN ステートメントは、MySQL がステートメントを実行する方法に関する情報を提供します...
目次環境まとめモジュール機能関連文書ソースコード分析CCGame.js CCInputManager...
導入チャートは、データ セットを読みやすくし、その各部分を区別しやすくするために使用されるデータのグ...
ログローテーションは、Linux システムでは非常に一般的な機能です。ログローテーションは、システム...
CSS3 アニメーション トランジションを使用して、リンクの上にマウスを移動すると小さなポップアップ...
1. 内部結合クエリの概要内部結合は、アプリケーションで非常に一般的な結合操作であり、通常はデフォ...
序文タイトルを見ると、誰もが「Debian 9 に MySQL をインストールするにはどうすればいい...
この記事では、gearman+mysql メソッドを使用して永続化操作を実装します。ご参考までに、詳...
コードをコピーコードは次のとおりです。 <HTML> <ヘッド> <T...
この記事では、divのドラッグ可能な高さを実現するためのVueの具体的なコードを参考までに共有します...
目次序文JavaScript find() メソッドJavaScript filter() メソッド...
目次範囲グローバルスコープ関数のスコープもし、スイッチ、のために、その間ブロックスコープスコープチェ...