Действительно, остерегайтесь использования двойных «кавычек», если вы имеете в виду «буквальную строку»!Я был озадачен сегодня:
sqlite> select * FROM words WHERE word = "id";
<nothing>
против:
sqlite> select * FROM words WHERE word = 'id';
13556|id
Схема:
sqlite> .schema
CREATE TABLE words (
id integer primary key,
word varchar(64)
);
Поскольку есть столбец с именем id
, "id"здесь интерпретируется как столбец с именем id
, а не как буквальная строка 'id'!Лучше избегайте двойных кавычек, если они вам не нужны.