الخلية الافتراضي استخدام الكلمة الأساسية الأخطاء
سؤال
عندما أحاول أن تعيين الافتراضي التاريخ الافتراضي sysdate am الحصول على الأخطاء التالية:
الخلية الاستعلام:
create table product_offer_type(object_id INT(19), snapshot_id INT(19), PRIMARY KEY(object_id,snapshot_id), enum_value VARCHAR(64) NOT NULL, external_name VARCHAR(64) NOT NULL, description VARCHAR(255), business_validation INT(1), valid_for_start_date_time DATE DEFAULT '1900-01-10', valid_for_end_date_time DATE DEFAULT '4712-01-01', mutation_date_time DATE SYSDATE, mutation_user VARCHAR(32) DEFAULT 'USER');
رسالة الخطأ:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSDATE, mutation_user VARCHAR(32) DEFAULT 'USER')' at line 1
أي المؤشر سيكون في غاية الامتنان.
المحلول
إذا كنت تحاول تتبع التعديل الأخير وقت التوالي ، وعادة ما تستخدم شيئا مثل
mutation_date_time timestamp default current_timestamp, on update current_timestamp
قد تحتاج إلى تعديل طفيف إذا كنت تريد حقا التاريخ وليس الزمني.
لا تنتمي إلى StackOverflow