这个问题已经被问过很多次了,但我还是很困惑。如果列中尚不存在值,我要做的就是运行插入语句。请注意,此列中的值不构成主键,因此replace
orupdate
方法不起作用。
word_id (PK, auto-complete) | word | timestamp (autocomplete)
1--sinecure--25th March
2--demotic--3rd April
3--atavism--5th May
在向此表添加另一个单词之前,我首先要检查它是否已经存在。考虑到这一点,这个例子应该保持表格不变。
INSERT INTO word_table(word) VALUES "sinecure"
WHERE NOT EXISTS (SELECT word FROM word_table WHERE word LIKE "sinecure")
当然,这个查询之后表没有变化,只是因为它抛出了一个错误。这不是我尝试过的唯一语法,但它是我看过的各种论坛/教程中最常提倡的语法。我也尝试过各种技巧,例如使用变量来存储 EXISTS 语句产生的 bool 值,但无济于事。