2017-10-20 11 views
0

を使用して、テーブルMySQLで日付を更新しようとすると、私はdatagripのIDEでのMySQLで特定のテーブルに日付を更新しようとしていると私は、クエリを実行すると、同じエラーメッセージを取得し続ける:datagrip IDE

[2017年10月20日午前12時39分28秒] [HY000] [1411]誤った日時値:関数str_to_dateための '2016年4月16日10時00分00秒AM'

UPDATE DetailRental 
    SET DETAIL_RETURNDATE = STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p') 
WHERE RENT_NUM = 1001 AND VID_NUM = 34342; 

上記は私の質問です。私はこれをどのようにフォーマットするかについてインターネット上で検索しています。これは私の知る限り最も一貫していますが私は同じエラーメッセージを取得し続け、私のテーブルは更新されません。

もし私が何をやっているのか助けてくれる人が誰でも助けてくれれば幸いです。ありがとう。

答えて

0

文字列のデータ形式はYYYY-MM-DD HH:MM:SS AMですが、DD/MM/YYYY HH:MM AM形式のデータを解析するように求められています。解析文字列は、文字列が入っている形式でなければなりません。

mysql> select STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p'); 
+------------------------------------------------------------+ 
| STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p') | 
+------------------------------------------------------------+ 
| NULL              | 
+------------------------------------------------------------+ 

mysql> select STR_TO_DATE('2016-04-16 10:00:00 AM', '%Y-%m-%d %h:%i:%s %p'); 
+---------------------------------------------------------------+ 
| STR_TO_DATE('2016-04-16 10:00:00 AM', '%Y-%m-%d %h:%i:%s %p') | 
+---------------------------------------------------------------+ 
| 2016-04-16 10:00:00           | 
+---------------------------------------------------------------+ 
関連する問題