Sqlite
編寫一個慢速 SQLITE 查詢來測試超時
是否可以編寫一個執行時間超過 5 秒的“簡單”SQLite 查詢。
我正在我的應用程序中編寫一些單元測試來記錄慢查詢,為此,我想要一個我知道執行時間超過 5 或 10 秒的慢查詢,(並創建一個要引發/記錄的警告) .
我正在考慮創建 10 個表,每個表中有 10 個條目,並對所有表進行連接選擇。
但我不確定這是否是測試慢速選擇的好方法(而不是大返回集)。
您應該創建一個使用者定義的函式來休眠所需的時間。
如果您受限於內置機制,請嘗試使用遞歸公用表表達式:
WITH RECURSIVE r(i) AS ( VALUES(0) UNION ALL SELECT i FROM r LIMIT 1000000 ) SELECT i FROM r WHERE i = 1;
但是 5 秒所需的迭代次數很大程度上取決於 CPU 速度。