データ管理 > SQLに関する考慮事項 > 構成とパフォーマンス
リレーショナルデータベースで大きいテーブルを参照する場合、範囲を使用して、ビュー内のレコード数を減らすことが重要です。範囲を使用しないでテーブルにアクセスすると、操作に長時間を要することがあります。特に位置付けやページアップなどの操作には時間がかかります。パフォーマンスを向上させるには、範囲は1つのインデックスのセグメントに指定します。
Magicでは、以下の4つの箇所から範囲を指定することができます。
Magic の項目定義の[範囲]特性 項目定義の[範囲]特性で指定した全ての範囲は、SELECT文の一部になります。その後、一連の検索中であっても、範囲はRDBMSおよびWHERE句によって処理されます。Magicは、クエリに一致したレコードのみを受け取ります。
タスクレベルの範囲式 タスクレベルの範囲式を使用すると、Magicによって、データベースから返された各レコードが式と比較され、レコードをビューの一部とするかどうかが決定されます。Magicは全てのレコードを受け取り、フィルタリングを実行します。
DB SQL範囲 データベースにそのまま送信されるWHERE句に連結されるフリーテキスト。これは、物理トランザクションモードのタスクでのみ実行されます。固有のデータベース構文を理解している必要があります。
Magic SQL範囲 データベースごとに適切な構文に変換されるMagicの式。これは、データベースに送信されるWHERE句に追加されます。固有のデータベース構文を理解していなくてもかまいません。
これら4つのオプションの動作は、まったく異なります。できるだけデータベースに送信できる箇所で、範囲を設定することをお勧めします。タスクレベルの範囲では、他で指定できない範囲条件のみ設定してください。