我搜索了sqlite.org,並且找不到這個。我習慣於MySQL,所以我想我可能忽略了一些東西。SQLite where子句在TEXT字段中表現得很奇怪
請看下面的代碼:
sqlite> select id,event_number,must_say from events where id=28;
28|'28'|'AFK'
sqlite> select id,event_number,must_say from events where must_say='AFK';
sqlite> select id,event_number,must_say from events where must_say like 'AFK';
sqlite> select id,event_number,must_say from events where must_say like 'A%';
sqlite> select id,event_number,must_say from events where must_say=='AFK';
sqlite>
不用說,我真的很期待下面對於上述所有的查詢將返回,不只是第一個:
28|'28'|'AFK'
我在所有TEXT字段上都會出現這種行爲。看來我根本找不到。
這裏是我的事件表的模式,用不相關的字段省略:
CREATE TABLE events (
id INTEGER PRIMARY KEY AUTOINCREMENT,
EVENT_NUMBER INTEGER,
MUST_SAY TEXT
);
任何想法?我只希望能夠通過表中的任意文本字段進行搜索。
編輯:我正在使用SQLite3。
它應該工作。嘗試插入新行並執行查詢。也可以嘗試'喜歡'%K%'',也許你有不可打印的字符。 – DavidEG
你說得對。我的數據庫人口中沒有足夠的性格剝離。我能否以某種方式推廣您的評論? – Brider
我不這麼認爲,但你至少可以將評論標記爲「很棒的評論」。我不知道我是否應該將該評論複製爲答案... – DavidEG