الخلية الطابع الزمني - لماذا كل الأصفار؟
-
10-07-2019 - |
سؤال
وأنا باستخدام بريس ولقد حصلت على عمود الخلية جدول يسمى "الطابع الزمني". نوع (مفاجأة!) هي TIMESTAMP
، وفي "سمات" لقد حدد لON UPDATE CURRENT_TIMESTAMP
.
ولكن، كل سجل جديد يحصل على الطابع الزمني الذي يبدو مثل هذا:
0000-00-00 00:00:00
ولقد حددت بوضوح القيمة الافتراضية مقابل لا شيء، ولكن عندما وحفظ وأعود للنظر، يتم تعيين إلى كافة الأصفار على النحو الوارد أعلاه.
والصفحة السجلات ذات الصلة PHP يضرب مع هذا الاستعلام:
$query = "INSERT INTO `pagehit` (user_id, pageurl)
VALUES ('" . $userid . "', '" . $pageurl . "')";
والامر كله يعمل تحت XAMPP.
ما أنا في عداد المفقودين؟
المحلول
ما أنا في عداد المفقودين؟
اقتباس فقرة>وأنت لا تحديث:)
استخدم DEFAULT CURRENT_TIMESTAMP
جنبا إلى جنب مع ON UPDATE CURRENT_TIMESTAMP
نصائح أخرى
وحاول تحديد القيمة الافتراضية لCURRENT_TIMESTAMP
بدلا من وضع ذلك في الصفات.
إذا العمود timestamp
بك يلتقط فقط في المرة الإدراج ثم استخدم فقط
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
وإلا لو كان لتعديل الوقت ثم استخدام مثل النحو التالي
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
في حالتي يعمل مثل هذا:
في بريس:
ALTER TABLE `name_table` ADD `name_row` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
في PHP sintax للصف:
date('Y-m-d H:i:s')