Sqlite

編寫一個慢速 SQLITE 查詢來測試超時

  • April 11, 2018

是否可以編寫一個執行時間超過 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 速度。

引用自:https://dba.stackexchange.com/questions/203545