0

質問したいのですが、mysql データベースに特定の時刻または日付を手動で入力する方法はありますか?

addtime()andを使用してadddate()いますが、結果は0000

ここに私のテーブルタイプがあります:

+----------------+------------+------+-----+---------+-------+
| Field          | Type       | Null | Key | Default | Extra |
+----------------+------------+------+-----+---------+-------+
| Number_of_days | varchar(3) | NO   | PRI | NULL    |       |
| Date_In        | date       | NO   |     | NULL    |       |
| Time_In        | time       | NO   |     | NULL    |       |
+----------------+------------+------+-----+---------+-------+

そしてこれが私の命令です

INSERT INTO Date_And_Time_In (Number_of_days, Date_In, Time_In) VALUES ('02', 'DATE(2013-06-03)', 'TIME(12:10:00)' );

そしてここに出力があります

mysql> select * from Date_And_Time_In;
+----------------+------------+----------+
| Number_of_days | Date_In    | Time_In  |
+----------------+------------+----------+
| 01             | 2013-06-03 | 11:32:24 |
| 02             | 0000-00-00 | 00:00:00 |
+----------------+------------+----------+

最初のものは と からのものでしcurdate()curtime()。特定の時刻または日付を変更したい場合は、どのmysqlコマンドを使用するのですか?

4

3 に答える 3

0

MySQL 関数の周りに引用符を追加すると、それらは実行されません (それらを文字列に変換したため)。無効な日付値は0000. 引用符を削除すると、うまく機能するはずです。

INSERT INTO 
    Date_And_Time_In (Number_of_days, Date_In, Time_In)
    VALUES ('02', DATE(2013-06-03), TIME(12:10:00));
于 2013-06-03T04:17:43.173 に答える
0

これらの値を DATE() および TIME() 関数で囲む必要はありません。MySQL はこれらの形式を受け入れ、正しく配置します。下記参照:

INSERT INTO Date_And_Time_In (Number_of_days, Date_In, Time_In) VALUES ('02', '2013-06-03', '12:10:00' );
于 2013-06-03T04:21:41.260 に答える
0

日付と時刻の関数は必要ありません。リテラルを引用符で囲みます。http://www.ntchosting.com/mysql/insert-date.htmlリンクには多くの例があります。

于 2013-06-03T04:26:20.150 に答える