正解はSYSDATE()です。
INSERT INTO servers (
server_name, online_status, exchange, disk_space,
network_shares, date_time
)
VALUES (
'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE', SYSDATE()
);
この動作を変更して、 sysdate_is_nowコマンド ライン引数を に設定NOW()
するのと同じように動作させることができます。SYSDATE()
True
NOW()
(エイリアスとして持っている)は、微妙な方法CURRENT_TIMESTAMP()
で異なることに注意してください。SYSDATE()
SYSDATE() は、実行時刻を返します。これは、ステートメントの実行が開始された時刻を示す一定の時間を返す NOW() の動作とは異なります。(ストアド関数またはトリガー内では、NOW() は、関数またはトリガーステートメントの実行が開始された時刻を返します。)
Erandiで示されDEFAULT
ているように、新しい行を挿入するときにタイムスタンプが列に自動的に入力されるように、句を使用してテーブルを作成することをお勧めします。
date_time datetime NOT NULL DEFAULT SYSDATE()
エポック形式の現在の日付が必要な場合は、 UNIX_TIMESTAMP()を使用できます。例えば:
select now(3), sysdate(3), unix_timestamp();
譲るだろう
+-------------------------+-------------------------+------------------+
| now(3) | sysdate(3) | unix_timestamp() |
+-------------------------+-------------------------+------------------+
| 2018-11-27 01:40:08.160 | 2018-11-27 01:40:08.160 | 1543282808 |
+-------------------------+-------------------------+------------------+
関連している: