Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere 11 - 紹介 » SQL Anywhere 11 の概要 » データ管理テクノロジの概要 » リレーショナル・データベースの概念

 

その他のデータベース・オブジェクト

リレーショナル・データベースは、単なる関連テーブルのセット以上のものがあります。リレーショナル・データベースには、次のオブジェクトもあります。

  • インデックス   インデックスを使用すると、情報をすばやく検索できます。概念的には、データベース内のインデックスは本の索引と同じです。本の場合、索引は、索引にリストされたそれぞれの用語と、その語が記載されているページを関連付けています。データベースの場合、インデックスは、インデックス付けされたカラムの値と、その値を含むデータのローが格納されている物理的なロケーションを関連付けます。

    インデックスは、パフォーマンスを高めるための重要な設計要素です。通常は明示的に作成する必要がありますが、プライマリ・キー、外部キー、ユニーク・カラムのインデックスは自動的に作成されます。作成されたインデックスは、ユーザに対して透過的に機能します。インデックスを参照してください。

  • テキスト・インデックス   テキスト・インデックスには、インデックス化されたすべてのカラム内の全単語の出現箇所の詳細な位置情報が含まれます。全文検索を実行する場合、テキスト・インデックスを使用して、一致するローが検索されます。このため、テキスト・インデックスを使用したクエリは、テーブル内のすべての値をスキャンする必要があるクエリよりも高速になる可能性があります。テキスト・インデックス全文検索を参照してください。

  • ログイン・ポリシー   ログイン・ポリシーは、ユーザのデータベース接続を作成するときに適用されるルール・セットで構成されます。ログイン・ポリシーの管理の概要を参照してください。

  • ビュー   ビューは、一時的なテーブルです。ビューはクライアント・アプリケーションからはテーブルのように見えますが、データは入っていません。ビューにアクセスすると、その中の情報は基本となるテーブルから計算されます。

    実際に情報が保持されるテーブルは、ビューと区別するために「ベース・テーブル」と呼ぶことがあります。ビューは、ベース・テーブルまたはその他のビューに対する SQL クエリによって定義付けられます。

    ビューの操作を参照してください。

  • マテリアライズド・ビュー   SQL Anywhere はマテリアライズド・ビューもサポートしています。マテリアライズド・ビューとは、ベース・テーブルとよく似ていて、結果セットが計算されてディスクに格納されるビューです。概念としては、マテリアライズド・ビューはビューでもあり (クエリ指定がある)、テーブルでもあります (永続的な実体化したローがある)。したがって、テーブルで実行する多くの操作は、マテリアライズド・ビューでも実行できます。たとえば、マテリアライズド・ビューに対して、インデックス構築やアンロードを実行できます。

    マテリアライズド・ビューは、データベースが大きく、頻繁なクエリで大量のデータに対して集約操作とジョイン操作が発生し、かつ最新のデータにアクセスすることが重大な要件ではないような環境に最適です。マテリアライズド・ビューの操作を参照してください。

  • ストアド・プロシージャとトリガ   これらは、データベースに保持され、データベース内の情報に作用するルーチンです。

    独自のストアド・プロシージャを作成して名前を付けると、特定のデータベース・クエリを実行したり、他のデータベース・タスクを実行したりすることができます。ストアド・プロシージャは、パラメータと結果セットを受け入れることができます。たとえば、プロシージャの呼び出しのパラメータに指定した値よりも多い金額を使った顧客名をすべて返すといったストアド・プロシージャを作成できます。

    トリガとは、ユーザがデータを更新、削除または挿入すると自動的に呼び出される特別なストアド・プロシージャで、更新、削除、挿入のどの場合に起動するかは、トリガをどのように定義したかによって異なります。トリガは、テーブル自体またはテーブル内のカラムと対応させます。トリガは、データベース内で自動的にビジネス規則の管理を行う場合に有用です。

    データベースには、Java クラスもインストールできます。Java クラスは、ロジックをデータベースに組み込む強力な方法を提供します。SQL Anywhere で使用する Java クラスの作成を参照してください。

    プロシージャ、トリガ、バッチの使用を参照してください。

  • ユーザとグループ   データベースの各ユーザは、ユーザ ID とパスワードを所有しています。ユーザごとにパーミッションを設定できるため、機密情報の漏洩や、ユーザに認可されていない変更の実行を防げます。パーミッションの管理を容易にするために、ユーザをグループに割り当てることができます。

    ユーザ ID、権限、パーミッションの管理を参照してください。

これらの共通のデータベース・オブジェクトに加え、SQL Anywhere は次の高度な機能を提供します。