次の方法で共有


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 パターンの長さは最大で数十バイトであるため、外部ユーザーが任意のパターンを生成できることがわかっている場合は、注意が必要なアプリケーション開発者は、このパラメーターを数百の範囲に減らしたい場合があります。

の Java ドキュメントandroid.database.sqlite.SQLiteDatabase.SQLITE_MAX_LIKE_PATTERN_LENGTH

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象