2017-03-06 6 views
-1

私は現在の日付をデフォルトで、時刻ではないとします。現在の日付

CREATE TABLE Order_T 
(OrderID NUMERIC(11) NOT NULL, 
OrderDate DATE DEFAULT NOW(), 
CustomerID NUMERIC(11), 
CONSTRAINT Order_PK PRIMARY KEY (OrderID), 
CONSTRAINT Order_FK FOREIGN KEY (CustomerID) REFERENCES Customer_T (CustomerID)); 

なぜこの日付では機能しないのか分かりません。

デフォルトの日付をタイムスタンプのない現在の日付にしたいとします。

+0

ユースA

DELIMITER || CREATE TRIGGER curr_date BEFORE INSERT ON Order_T FOR EACH ROW BEGIN SET new.date = NOW(); END || DELIMITER ; 

トリガーを使用トリガ、この回答を参照してください[http://stackoverflow.com/questions/6283821/how-to-set-default-value-of-mysql-datetime-not-timestamp-to-now-or-current](http:/ /stackoverflow.com/questions/6283821/how-to-set-default-value-of-mysql-datetime-not-timestamp-to-now-or-current) –

+1

MySQL ??本気ですか!?? – Strawberry

+0

[MySQL Datetimeカラムのデフォルト値はどのように設定しますか?](http://stackoverflow.com/questions/168736/how-do-you-set-a-default-value-for-a- mysql-datetime-column) –

答えて

0

How to set default value of MySQL DateTime (not TIMESTAMP) to NOW() or Current_DateTIme?トン価値の-mysqlの-DATこの回答を参照してくださいETIME-ないタイムスタンプツー今-または電流

+0

私はmysqlにはかなり新しいので、トリガーがどこに来るのかは分かりません。それはテーブルの中にあるのでしょうか? –

+0

最初にトリガーを作成する必要があります。なぜなら、トリガーをテーブルに割り当てる必要がある構文がある場合、まずデフォルトでテーブルを作成してからトリガーを作成するからです。 –

+0

Thanks Judith !!出来た –