SQLiteDatabase.SqliteMaxLikePatternLength 欄位

定義

LIKE 或 GLOB 模式的最大長度:SQLite 的預設 LIKE 和 GLOB 實作中使用的模式比對演算法,可能會針對特定病理案例顯示 O(N^2) 效能(其中 N 是模式中的字元數)。

[Android.Runtime.Register("SQLITE_MAX_LIKE_PATTERN_LENGTH")]
public const int SqliteMaxLikePatternLength = 50000;
[<Android.Runtime.Register("SQLITE_MAX_LIKE_PATTERN_LENGTH")>]
val mutable SqliteMaxLikePatternLength : int

欄位值

Value = 50000
屬性

備註

LIKE 或 GLOB 模式的最大長度:SQLite 的預設 LIKE 和 GLOB 實作中使用的模式比對演算法,可能會針對特定病理案例顯示 O(N^2) 效能(其中 N 是模式中的字元數)。 為了避免拒絕服務攻擊,LIKE 或 GLOB 模式的長度限制為SQLITE_MAX_LIKE_PATTERN_LENGTH個字節。 此限制的預設值為 50000。 新式工作站甚至可以評估 50000 個字節的病理 LIKE 或 GLOB 模式。 當模式長度變成數百萬個字節時,才會發生阻斷服務問題。 不過,由於最有用的 LIKE 或 GLOB 模式長度最多為幾十個字節,因此,如果應用程式開發人員知道外部使用者能夠產生任意模式,可能會想要將此參數縮減為數百個範圍內的某個專案。

android.database.sqlite.SQLiteDatabase.SQLITE_MAX_LIKE_PATTERN_LENGTHJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於