我需要創建一個語句,如果語句不存在,則將用戶添加到我的SQLite數據庫中,否則請更新其值並將1添加到其以前的totalMessages中。
到目前爲止,我寫了這個:SQLITE - 在INSERT上設置默認值
INSERT OR REPLACE INTO users (id, username, first, last, totalMessages) values (
'hisID',
'hisName',
'hisFirst',
'hisLast',
(SELECT totalMessages FROM users WHERE id = 'hisID') +1);
它正常工作時,該用戶已經存在,但如果沒有,totalMessages的值設置爲NULL,我需要它爲0
這是我的用戶表:
CREATE TABLE IF NOT EXISTS users (
id VARCHAR(255) PRIMARY KEY,
username VARCHAR(255),
first VARCHAR(255),
last VARCHAR(255),
totalMessages INTEGER)
任何人能告訴我該怎麼做,好嗎?
更新:我試過使用「DEFAULT'0'」和「DEFAULT 0」作爲斯科特建議,但它仍然將totalMessages保存爲NULL。
你可以看到它,測試是here。
爲什麼這需要成爲一個單一的聲明? –