MySQL テーブルに挿入するときに誤った日時値を修正するにはどうすればよいですか?

WBOY
リリース: 2023-08-31 12:53:06
転載
994 人が閲覧しました

在 MySQL 表中插入时如何修复不正确的日期时间值?

不正な日時値エラーを回避するには、STR_TO_DATE() メソッドを使用できます。

ご存知のとおり、日時形式は YYYY-MM-DD であり、同じ形式で挿入しないと、エラーが生成されます。

実際にこのエラーが発生する原因を見てみましょう。そのために、新しいテーブルを作成しましょう。テーブルを作成するクエリは次のとおりです。

mysql> create table CorrectDatetimeDemo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > ArrivalTime datetime
   - > );
Query OK, 0 rows affected (0.63 sec)
ログイン後にコピー

この問題は、誤った日時形式の日付を含めようとすると発生します

mysql> insert into CorrectDatetimeDemo(ArrivalTime) values('18/02/2019 11:15:45');
ERROR 1292 (22007): Incorrect datetime value: '18/02/2019 11:15:45' for column 'ArrivalTime' at row 1
ログイン後にコピー

上記のエラーを回避するには、STR_TO_DATE() を使用できます。

構文は次のとおりです

INSERT INTO yourTableName(yourDateTimeColumnName) VALUES (STR_TO_DATE('yourDateTimeValue','%d/%m/%Y %H:%i:%s'));
ログイン後にコピー

次に、上記の構文に示されている正しい形式で日時を再度挿入してみましょう。

クエリは次のとおりです

mysql> insert into CorrectDatetimeDemo(ArrivalTime) values(STR_TO_DATE('18/02/2019 11:15:45','%d/%m/%Y %H:%i:%s'));
Query OK, 1 row affected (0.21 sec)

mysql> insert into CorrectDatetimeDemo(ArrivalTime) values(STR_TO_DATE('15/01/2017 10:10:15','%d/%m/%Y %H:%i:%s'));
Query OK, 1 row affected (0.16 sec)

mysql> insert into CorrectDatetimeDemo(ArrivalTime) values(STR_TO_DATE('12/04/2016 15:30:35','%d/%m/%Y %H:%i:%s'));
Query OK, 1 row affected (0.20 sec)
ログイン後にコピー

select ステートメントを使用して、テーブル内のすべてのレコードを表示します。

クエリは次のとおりです

mysql> select *from CorrectDatetimeDemo;
ログイン後にコピー

出力結果は次のとおりです

+----+---------------------+
| Id | ArrivalTime         |
+----+---------------------+
|  1 | 2019-02-18 11:15:45 |
|  2 | 2017-01-15 10:10:15 |
|  3 | 2016-04-12 15:30:35 |
+----+---------------------+
3 rows in set (0.00 sec)
ログイン後にコピー

以上がMySQL テーブルに挿入するときに誤った日時値を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート