而是寫作......有沒有辦法在SQLite中註冊查詢?
SELECT {long ass list of crap}
FROM long_table_name
WHERE {annoyingly complex criteria} = 1
...每次有需要的時候,有沒有登記此查詢方式?一種CREATE_QUERY
命令,如果你願意?
在此先感謝。
而是寫作......有沒有辦法在SQLite中註冊查詢?
SELECT {long ass list of crap}
FROM long_table_name
WHERE {annoyingly complex criteria} = 1
...每次有需要的時候,有沒有登記此查詢方式?一種CREATE_QUERY
命令,如果你願意?
在此先感謝。
使用view。
CREATE VIEW view_name AS
SELECT {long ass list of crap}
FROM long_table_name
WHERE {annoyingly complex criteria} = 1;
之後,你可以簡單地寫SELECT * FROM view_name
'views'是否也支持非'SELELECT'查詢(即'DELETE','INSERT'和'UPDATE')? –
@NoobSaibot:不是直接的,但是你可以用'DELETE','INSERT'或''INSTEAD OF'子句定義一個['TRIGGER'](http://www.sqlite.org/lang_createtrigger.html) UPDATE'。 – dan04
你介意在這種情況下附加一個如何使用'INSTEAD OF'的例子嗎?我真的很感激它。 –
不能SQLite中創建存儲過程,而不是你做一些這方面
你可以做一個源文件,'包含所有上述查詢的query.sql',然後每次做'USE query.sql的;'。或者,當然,您可以將它存儲在Python字符串中。 – hkk