Czytając datefunc, działającym przykładem automatycznego uzupełniania daty i godziny byłby:
sqlite> CREATE TABLE 'test' (
...> 'id' INTEGER PRIMARY KEY,
...> 'dt1' DATETIME NOT NULL DEFAULT (datetime(CURRENT_TIMESTAMP, 'localtime')),
...> 'dt2' DATETIME NOT NULL DEFAULT (strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime')),
...> 'dt3' DATETIME NOT NULL DEFAULT (strftime('%Y-%m-%d %H:%M:%f', 'now', 'localtime'))
...> );
Wstawmy kilka wierszy w sposób, który zainicjuje automatyczne uzupełnianie daty i godziny:
sqlite> INSERT INTO 'test' ('id') VALUES (null);
sqlite> INSERT INTO 'test' ('id') VALUES (null);
Zapisane dane wyraźnie pokazują, że pierwsze dwie są takie same, ale nie trzecia funkcja:
sqlite> SELECT * FROM 'test';
1|2017-09-26 09:10:08|2017-09-26 09:10:08|2017-09-26 09:10:08.053
2|2017-09-26 09:10:56|2017-09-26 09:10:56|2017-09-26 09:10:56.894
Zwróć uwagę, że funkcje SQLite są ujęte w nawiasy! Jak trudno było to pokazać na jednym przykładzie?
Baw się dobrze!