MySQLで日時(DATETIME)を簡単に挿入する方法
MySQLコマンドラインでDATETIMEを挿入する基本構文
MySQLでは、コマンドラインから日時(DATETIME型)の値を簡単に挿入できます。基本的な構文は以下のとおりです。
INSERT INTO テーブル名 VALUES('日時の値');日時の値は「YYYY-MM-DD HH:MM:SS」形式で文字列として指定するのが一般的です。
手順1:テーブルを作成する
まず、DATETIME型のカラムを持つテーブルを作成しましょう。
mysql> CREATE TABLE DemoTable
(
DateOfBirth DATETIME
);
Query OK, 0 rows affected (0.97 sec)
「Query OK」と表示されれば、テーブルの作成は成功です。
手順2:レコードを挿入する
続いて、INSERTコマンドを使って日時データを登録します。
mysql> INSERT INTO DemoTable VALUES('1998-01-23 12:45:56');
Query OK, 1 row affected (0.26 sec)
mysql> INSERT INTO DemoTable VALUES('2010-12-31 01:15:00');
Query OK, 1 row affected (0.10 sec)
mysql> INSERT INTO DemoTable VALUES('2015-04-03 14:00:45');
Query OK, 1 row affected (0.10 sec)このように、日時をシングルクォート(')で囲んで渡すだけで、正しくDATETIME型として保存されます。
手順3:挿入したデータを確認する
SELECT文を実行して、テーブル内のすべてのレコードを表示してみましょう。
mysql> SELECT * FROM DemoTable;
実行結果は以下のとおりです。
+---------------------+
| DateOfBirth |
+---------------------+
| 1998-01-23 12:45:56 |
| 2010-12-31 01:15:00 |
| 2015-04-03 14:00:45 |
+---------------------+
3 rows in set (0.00 sec)
補足:現在の日時を自動的に挿入する方法
システムの現在日時をそのまま登録したい場合は、NOW()関数を使うと便利です。
mysql> INSERT INTO DemoTable VALUES(NOW());
このほかにも、CURRENT_TIMESTAMP()関数でも同様に現在の日時を取得できます。用途に応じて使い分けるとよいでしょう。
-
MySQLでINSERT前にトリガーを使って挿入を停止・キャンセルする方法
BEFORE INSERTトリガーで挿入を停止する方法 MySQLでは、BEFORE INSERTトリガーとSIGNAL SQLSTATEを組み合わせることで、INSERT処理を実行前に中断(キャンセル)できます。トリガー内で条件をチェックし、条件を満たした場合にエラーを発生させることで、その挿入自体が取り消されます。 基本構文 構文は以下の通りです。 delimiter // create trigger yourTriggerName before insert on yourTableName FOR EACH ROW BEGIN yourStateme
-
PythonでMySQLに日付データを挿入する方法をわかりやすく解説
PythonからMySQLデータベースに日付を挿入するには、まずテーブル側の準備が必要です。挿入先のカラムは DATE 型または DATETIME 型として定義しておきましょう。 日付を文字列に変換してから挿入する MySQLに日付を登録する際は、Pythonのdatetimeオブジェクトをそのまま渡すのではなく、あらかじめ文字列形式に変換しておく必要があります。この変換には、標準ライブラリ datetime モジュールが提供する strftime() メソッドを使うのが一般的です。 コード例 from datetime import datetime now = datetime.now(