0
我想在我的表中設置一個默認字段到當前時間。當我使用fts3虛擬表時,插入一行不會將缺省字段填充到應該的位置。相反,它插入null。如何在使用fts3 Sqlite表時設置'DEFAULT'字段?
如果我創建與普通表相同的表,則完全相同的查詢將起作用,並且填充字段。
下面是我使用的是2層不同的表結構:
普通表默認值確實工作
CREATE TABLE Emlak_test2 (_id INTEGER PRIMARY KEY,emlak_id TEXT,created_at TEXT DEFAULT (datetime('now', 'localtime')),emlak_sellorrent TEXT,emlak_cat TEXT,emlak_altcat TEXT,emlak_desc TEXT,emlak_living_rooms INTEGER,emlak_rooms INTEGER,emlak_sellprice INTEGER,emlak_temp TEXT,emlak_city TEXT,emlak_state TEXT,emlak_address TEXT,img_p1 TEXT,img_p2 TEXT,img_p3 TEXT,img_p4 TEXT,img_p5 TEXT,musteri_id TEXT);
FTS3表中的默認值不起作用
CREATE VIRTUAL TABLE Emlak_test USING fts3 (_id INTEGER PRIMARY KEY,emlak_id TEXT,created_at TEXT DEFAULT (datetime('now', 'localtime')),emlak_sellorrent TEXT,emlak_cat TEXT,emlak_altcat TEXT,emlak_desc TEXT,emlak_living_rooms INTEGER,emlak_rooms INTEGER,emlak_sellprice INTEGER,emlak_temp TEXT,emlak_city TEXT,emlak_state TEXT,emlak_address TEXT,img_p1 TEXT,img_p2 TEXT,img_p3 TEXT,img_p4 TEXT,img_p5 TEXT,musteri_id TEXT);
現在,如果我使用這個查詢;
insert into table_name default values;
在第一個表上,我可以看到created_at字段已填充。在第二張桌子上,該字段爲空。
我希望你能幫助我。
謝謝!
好的,謝謝。我在發佈這個問題後看到了這個文檔,但它很難理解。 –