2009-12-26 12 views
12

ben eklemek veya bir kaydı güncelleştirmek, ben ('şimdi') datetime ile updated_on alanını güncelleştirmek için bir tetikleyici istiyorum busqlite3, 'updated_on' datetime alanını otomatik olarak güncelleştirmek için bir tetikleyiciyi destekliyor mu?

user_id | name | created_on | updated_on 
-------------------------------------------------- 
1   | Peter D | 1/1/2009  | 

benzeyen bir tablo var. Ancak, sqlite3'te en son güncellenen satırı hedeflemek için işlev adını bulamıyorum. Biri var mı

+0

http://www.sqlite.org/lang_createtrigger.html –

+0

teşekkürler Hasan, mesele ben, bir tetikleyici içinde bir yol bulamıyorum sqlite3 içinde son güncelleme satır hedef olmasıdır. Başka bir tetikleyicide 'last_insert_rowid()' kullanıyorum. Ama ben 'last_update_rowid()' ı arıyorum ve bunun gibi bir şey bulamıyorum. –

+0

@DougCurrie tarafından sağlanan cevap gerçekten işe yarıyor! SQLite dokümantasyonunun bu kadar net olmadığı bir pisi [Tetikleyici SQLite Oluştur] (http://www.sqlite.org/lang_createtrigger.html) – Caumons

cevap

24
CREATE TRIGGER your_table_trig AFTER UPDATE ON your_table 
BEGIN 
    update your_table SET updated_on = datetime('now') WHERE user_id = NEW.user_id; 
END; 
+0

Bir çekicilik gibi çalıştım! Teşekkürler. –

+0

Eğer bu sorunuza cevap verdiyse, cevabın yanındaki onay işaretini tıklayarak cevabı "Kabul et" için SO üzerinde gelenekseldir. –

İlgili konular