MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで現在の日付と時刻をTIMESTAMPカラムに設定する方法

MySQLでは、TIMESTAMP 型のカラムに現在の日付と時刻を保存したい場面がよくあります。例えば、ユーザーのログイン日時を記録する場合などです。本記事では、テーブルの作成からデータの挿入、確認までの手順を解説します。

1. TIMESTAMP型のカラムを含むテーブルを作成する

まず、TIMESTAMP 型のカラムを持つテーブルを作成しましょう。以下の例では、UserLoginTime カラムにデフォルト値として CURRENT_TIMESTAMP を設定しています。

mysql> create table DemoTable648(
    UserId int NOT NULL AUTO_INCREMENT,
    UserLoginTime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY(UserId)
);
Query OK, 0 rows affected (0.66 sec)

DEFAULT CURRENT_TIMESTAMP を指定しておくと、明示的に値を渡さなくても、レコード挿入時の時刻が自動的に設定されます。

2. NOW()関数で現在日時を挿入する

次に、INSERT文でレコードを追加します。ここでは NOW() 関数を使って、現在の日付と時刻をTIMESTAMP型のカラムに設定しています。

mysql> insert into DemoTable648(UserLoginTime) values(NOW());
Query OK, 1 row affected (0.22 sec)

NOW() は実行時の日時を「YYYY-MM-DD HH:MM:SS」形式で返す関数です。なお、CURRENT_TIMESTAMPLOCALTIME() も同様の結果を返します。

3. SELECT文で登録結果を確認する

SELECT文を使って、テーブル内のすべてのレコードを表示してみましょう。

mysql> select *from DemoTable648;

実行すると、次のような出力が得られます。

+--------+---------------------+
| UserId | UserLoginTime       |
+--------+---------------------+
|      1 | 2019-07-18 21:11:50 |
+--------+---------------------+
1 row in set (0.00 sec)

まとめ

TIMESTAMP 型のカラムに現在日時を設定するには、INSERT時に NOW() 関数を使用するか、カラム定義で DEFAULT CURRENT_TIMESTAMP を指定する方法があります。後者を利用すれば、値を明示的に指定しなくても自動的に現在時刻が記録されるため、ログイン履歴や更新日時の管理に非常に便利です。用途に応じて使い分けるとよいでしょう。

  1. JavaScriptで現在の日付と時刻を取得する方法

    JavaScriptで現在の日付や時刻を取得するには、標準組み込みオブジェクトである Date オブジェクトを使用します。基本的な使い方Date オブジェクトを new を付けずにそのまま呼び出すと、現在の日付と時刻を表す文字列が返されます。以下のコードは、ページ上に現在の日付と時刻を表示するシンプルな例です。<!DOCTYPE html> <html>    <body>       <p id="currentDate"></p>     &

  2. Androidで現在の日時を取得する方法【SimpleDateFormatの使い方を解説】

    はじめに Oracle公式ドキュメントによると、SimpleDateFormatはロケールに依存した形で日付のフォーマット(表示)と解析(パース)を行うための具象クラスです。本記事では、このクラスを使ってAndroidアプリ内で現在の日付と時刻を取得し、画面に表示する方法を解説します。 まず、以下のようにJavaのSimpleDateFormatクラスとDateクラスをインポートします。 import java.text.SimpleDateFormat; import java.util.Date; 実装手順 ステップ1:新規プロジェクトの作成 Android Studioを起動し、「Fil