Tôi muốn cập nhật một trường có dấu thời gian hiện tại bất cứ khi nào hàng được cập nhật.khi cập nhật current_timestamp với SQLite
Trong MySQL tôi sẽ làm gì, khi tuyên bố bảng
LastUpdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP
Nhưng "trên bản cập nhật" một phần không làm việc với SQLite. Tôi không thể tìm cách tự động làm điều đó, tôi có cần khai báo trình kích hoạt không?
EDIT: Đối với hồ sơ, đây là kích hoạt hiện tại của tôi:
CREATE TRIGGER [UpdateLastTime]
AFTER UPDATE
ON Package
FOR EACH ROW
BEGIN
UPDATE Package SET LastUpdate = CURRENT_TIMESTAMP WHERE ActionId = old.ActionId;
END
Cảm ơn
Để chuyên gia SQLite: đừng ngại để gửi "bạn phải viết một cò" nếu đó là câu trả lời. –
Nếu bạn đang tự hỏi 'ActionId' và' old.ActionId' đến từ đâu, 'ActionId' là một cột trong bảng Package của Jonas, và' old' được định nghĩa bởi SQLite như là một tham chiếu đến các hàng được cập nhật. (Xem: http://www.sqlite.org/lang_createtrigger.html) – Arel