データベース モデル (エンティティ関係図とも呼ぶ) を作成する

データベース モデル (エンティティ関係図とも呼ぶ) を作成する

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

データベース モデル図テンプレートを使用すると、新しいモデルを作成したり、リレーショナルまたはオブジェクト リレーショナル モデリング概念を使用して、リバース エンジニアリングにより既存のデータベースからモデルを作成することができます。SQL92 以前の標準に基づくデータベースのモデリングを行う場合は、[エンティティ関係図] ステンシルを使用します。SQL99 以降の標準に基づくデータベースのモデリングを行う場合は、型の操作用の図形が追加されている [オブジェクト リレーショナル] ステンシルを使用します。

データベース モデルの例

データベース モデル図テンプレートを使用すると、新しいモデルを作成したり、リレーショナルまたはオブジェクト リレーショナル モデリング概念を使用して、リバース エンジニアリングにより既存のデータベースからモデルを作成することができます。SQL92 以前の標準に基づくデータベースのモデリングを行う場合は、[エンティティ関係図] ステンシルを使用します。SQL99 以降の標準に基づくデータベースのモデリングを行う場合は、型の操作用の図形が追加されている [オブジェクト リレーショナル] ステンシルを使用します。

このトピックでは、データベース モデルの作成方法と、モデル作成後にこれをどのように利用できるかを説明します。

データベース モデルの機能が見つかりませんか。

Microsoft Visio には、データベース モデリング機能が用意されていないエディションもあります。このトピックの手順で説明する機能が見つからない場合、お使いのエディションの Visio にそれらの機能が用意されていない可能性があります。

  • Microsoft Visio Standard には、データベース モデル図テンプレートはありません。

  • Microsoft Visio Professional および Premium は、データベース モデル図テンプレートのリバース エンジニアリング機能 (既存のデータベースを使用して Visio のモデルを作成すること) はサポートしていますが、フォワード エンジニアリング (Visio データベース モデルを使用して SQL コードを生成すること) はサポートしていません。

  1. データベース モデル図を作成するには、次のいずれかの操作を行います。

    ゼロから、新しいモデル図を作成します。

    基礎として利用できる既存のデータベースがない場合は、空のデータベース モデルを作成して、これに独自のテーブルやリレーションシップを追加できます。

    1. [ファイル] タブをクリックします。

    2. [新規作成] をクリックし、[ソフトウェアとデータベース] をクリックして、[データベース モデル図] をダブルクリックします。

    3. [データベース] タブの [統括] で [表示オプション] をクリックします。

    4. [データベース図面オプション] ダイアログ ボックスで、使用する記号セットを選択し、さらにテーブルとリレーションシップについてのその他のオプションを指定して、[OK] をクリックします。

    開始点として既存のデータベースを使用します。

    モデルをよりよく理解するため、または新しいモデルの基礎として利用できるデータベースがある場合は、リバース エンジニアリング ウィザードを使用して、データベースのスキーマ、つまり構造を抽出し、新しいモデルを構築できます。

    リバース エンジニアリング ウィザードを実行する前に、次の作業を実行する必要があります。

    1. Microsoft Excel ブックをリバース エンジニアリングする場合は、ウィザードを起動する前にブックを開き、列見出しを含むセルのグループ (または範囲) に名前を付けておく必要があります。複数のワークシートを使用する場合は、各ワークシートで列のセルのグループに名前を付けます。これらの範囲は、ウィザードではテーブルとして扱われます。セル範囲に名前を付ける方法の詳細については、Microsoft Excel のヘルプ トピック「ブック内のセルに名前を付ける」を参照してください。

    2. 最適な結果を得るには、リバース エンジニアリング ウィザードを実行する前に、既定のドライバをリバース エンジニアリングを行うターゲット データベースに設定します。これにより、ウィザードがネイティブなデータ型を適切にマップし、ウィザードによって抽出されたすべてのコードが [コード] ウィンドウに正しく表示されます。

    3. [ファイル] タブをクリックします。

    4. [新規作成] をクリックし、[ソフトウェアとデータベース] をクリックして、[データベース モデル図] をダブルクリックします。

    5. [データベース] タブの [モデル] で [リバース エンジニアリング] をクリックします。

    6. リバース エンジニアリング ウィザードの最初の画面で、次の操作を行います。

      1. 使用するデータベース管理システム (DBMS) に対応したデータベース ドライバーを選択します。Visio データベース ドライバーと特定の ODBC データ ソースを関連付けていない場合は、[設定] をクリックします。

        注: Excel ワークシートをリバース エンジニアリングする場合は、ODBC 汎用ドライバーを選択します。

      2. 更新するデータベースのデータ ソースを選択します。既存のデータベースのデータ ソースを作成していない場合は、ここで [新規作成] をクリックして作成します。

        新しいソースを作成すると、その名前が [データ ソース] ボックスの一覧に追加されます。

      3. 設定が終了したら、[次へ] をクリックします。

    7. 各ドライバに応じたダイアログ ボックスの指示に従います。

      たとえば、[データ ソースに接続] ダイアログ ボックスでは、ユーザー名とパスワードを入力して、[OK] をクリックします。

      注: ODBC 汎用ドライバーを使用する場合、リバース エンジニアリングされた情報が不完全である可能性を示すエラー メッセージが表示される場合があります。通常、これは問題にならないので、[OK] をクリックし、ウィザードの操作を続行してください。

    8. 抽出する情報の種類を表すチェック ボックスをオンにして、[次へ] をクリックします。

      注: ウィザードが抽出できる要素の全種類がすべてのデータベース管理システムでサポートされているわけではないので、一部の要素は利用できない (灰色で表示される) 場合があります。

    9. 抽出するテーブル (および必要な場合はビュー) のチェック ボックスをオンにします。すべてのテーブルを抽出する場合は、[すべて選択] をクリックし、[次へ] をクリックします。

      注: Excel ワークシートをリバース エンジニアリングする場合に、この一覧に何も表示されていない場合は、使用するワークシートで列見出しを含むセル範囲に名前を付ける必要があると思われます。

    10. [ストアド プロシージャ] チェック ボックスをオンにした場合は、抽出するプロシージャを選択するか、すべてのプロシージャを抽出するために [すべて選択] をクリックして、[次へ] をクリックします。

    11. リバース エンジニアリングされたアイテムを現在のページに自動的に追加するかどうかを選択します。

      注: [テーブルとビュー] ウィンドウにリバース エンジニアリングされたアイテムを表示するだけでなく、ウィザードにより自動的に図面を作成するようにすることもできます。自動的に図面を作成しない場合は、[テーブルとビュー] ウィンドウからアイテムを図面ページにドラッグして、データベース モデルを手動で作成できます。

    12. 選択した内容が表示されるので、必要な情報が抽出されるよう選択されていることを確認して、[完了] をクリックします。

      選択した情報が抽出されます。抽出処理の進捗状況が [出力] ウィンドウに表示されます。

    インポートして、既存のモデルを調整します。

    既存の VisioModeler または PLATINUM ERwin モデルがある場合は、これをインポートして Visio のデータベース モデル図を作成できる可能性があります。ただし、この機能が利用できるのは、VisioModeler 2.0 以降のディクショナリ モデル (.imd) ファイルと PLATINUM ERwin 2.6、3.0、3.52 の .erx ファイルに限られます。

    1. [ファイル] タブをクリックします。

    2. [新規作成] をクリックし、[ソフトウェアとデータベース] をクリックして、[データベース モデル図] をダブルクリックします。

    3. [データベース] タブの [モデル] で [インポート] をクリックし、モデルの種類をクリックします。

    4. インポートするモデルのパスとファイル名を入力するか、[参照] ボタンをクリックしてモデルのファイルを検索し、[開く] をクリックします。

    5. [インポート] ダイアログ ボックスで、[OK] をクリックします。

      指定したモデルのファイルがインポートされます。このとき、インポートの進捗状況が [出力] ウィンドウに表示されます。インポートされたテーブルは [テーブルとビュー] ウィンドウに表示されます。

    6. [テーブルとビュー] ウィンドウで、モデリングするテーブルを選択し、そのテーブルを図面ページへドラッグします。

  2. データベース モデル図を作成したら、このモデル図を修正する作業を始めます。テーブルやビューを追加またはカスタマイズしたり、リレーションシップを作成したり、カラムやデータ型をカスタマイズしたりします。

    テーブル

    図面にテーブルを作成するには、[エンティティ] 図形を使用します。

    1. [エンティティ関係図] または [オブジェクト リレーショナル] ステンシルから図面に [エンティティ] 図形をドラッグします。

    2. この図形をダブルクリックして [データベース プロパティ] ウィンドウを開きます。

    3. [カテゴリ] の [定義] をクリックし、テーブルの名前を入力します。

    4. [カテゴリ] の [カラム] をクリックし、名前を入力して、データ型を指定します。

    5. NULL 値を許可しないカラムに対しては、[必須] チェック ボックスをオンにします。

    6. データベース テーブルの各行を一意に識別するカラムに対して、[PK] (主キー) チェック ボックスをオンにします。

    7. [カテゴリ] の [インデックス]、[トリガ]、[チェック]、[拡張] をクリックすると、これらのオプションの要素を作成できます

    データ型や主キーなど、カラムのプロパティを追加または変更するには、[データベース プロパティ] ウィンドウを使用します。

    1. 図面のテーブルをダブルクリックします。

    2. [データベース プロパティ] ウィンドウで、[カテゴリ] の [カラム] をクリックします。

    3. 最初の空白の [物理名] セルをクリックし、名前を入力します。

    4. カラムのデータ型を変更するには、カラムの [データ型] フィールドをクリックして一覧の任意のデータ型をクリックするか、一覧に目的のデータ型を入力します。たとえば、「decimal(8,2)」や「char(30)」と入力します。

    5. NULL 値を許可しない場合は、[必須] チェック ボックスをオンにします。

    6. このカラムを主キーにする場合は、[PK] チェック ボックスをオンにします。

    7. [カラム] カテゴリをクリックしたときに表示されるプロパティ以外のカラム プロパティも表示するには、カラムを選択して、[編集] をクリックします。

    リレーションシップ

    リレーションシップでは、主キーと外部キーを使用して、データベース内のあるテーブルの行と別の関連するテーブルの行とを対応付けることができます。このようなリレーションシップは、図面に表示することができます。また、リレーションシップのカーディナリティ (一対多など) を設定して、設定したカーディナリティをクロウズ フット、リレーショナル、または IDEF1X 表記法により表現できます。データベース モデル図テンプレートでは、このうちのいずれの表記法でも、多対多のリレーションシップを表現することはできません。

    1. テーブル間のリレーションシップを作成します。

      1. リレーションシップを確立するテーブルが両方とも図面内に表示されていることを確認します。既存のデータベースからモデルをリバース エンジニアリングする場合は、いずれか片方または両方を [テーブルとビュー] ウィンドウから図面にドラッグしなければならない場合があります。

      2. リレーションシップの主キー側となるテーブルをダブルクリックします。

      3. [データベース プロパティ] ウィンドウで、[カテゴリ] の [カラム] をクリックします。

      4. グリッドで、テーブルの各行を一意に識別するために使用するカラムをクリックし、[PK] チェック ボックスをオンにして、このカラムを主キーに設定します。

      5. [オブジェクト リレーショナル] または [エンティティ関係図] ステンシルから図面ページの空白スペースに [リレーションシップ] 図形をドラッグ アンド ドロップします。

      6. テーブルの上端を親テーブルに接続します。

      7. もう一方の端を子テーブルに接続します。

        2 つめのテーブルに主キーと同じ名前のカラムが含まれていない場合は、この名前のカラムが外部キーとして 2 つめのテーブルに追加されます。

        注: リレーションシップ線が非表示になった場合は、[データベース] タブの [統括] で [表示オプション] をクリックします。[リレーションシップ] タブで、[表示] の [リレーションシップ] チェック ボックスをオンにします。

    2. リレーションシップのカーディナリティを設定します。

      1. リレーションシップをダブルクリックします。

      2. [データベース プロパティ] ウィンドウで [カテゴリ] の [その他] をクリックします。

      3. [カーディナリティ] から、リレーションシップに最も適したカーディナリティを選択します。一対多のリレーションシップには、[0 またはそれ以上] または [1 またはそれ以上] が最適です。一対多のリレーションシップには、[0 または 1] または [1] が最適です。

  3. 図面でその他の修正 (インデックス、チェック句、トリガの作成など) を行うには、次の操作を行います。

    インデックスを作成します。

    インデックスを作成すると、クエリの実行時にデータベースのパフォーマンス (処理速度) が向上します。

    1. データベース モデル図を開きます。

    2. インデックスを追加するテーブルをダブルクリックし、[データベース プロパティ] ウィンドウで [カテゴリ] ボックスの一覧の [インデックス] をクリックします。

    3. [新規作成] をクリックします。

    4. [インデックスの作成] ダイアログ ボックスでインデックスの名前を入力して [OK] をクリックします。

    5. [インデックスの種類] ボックスの一覧で、一意性インデックスまたは非一意性インデックスを作成するオプションをクリックします。

    6. [使用可能なカラム] ボックスの一覧でインデックスに追加するカラムの名前をクリックして、[追加 >] をクリックします。

    7. [インデックスの付いたカラム] ボックスの一覧の [昇順] チェック ボックスをオンにすると昇順のインデックスが作成され、このチェック ボックスをオフにすると降順のインデックスが作成されます。

      データベース モデル図が更新されます。

    ビューを作成する

    ビューは保存されたクエリのようなものと考えることができます。ビューは、複数のテーブルに含まれる同じ情報に繰り返しアクセスする場合や、ユーザーからは実際のテーブルを変更できないようにして、ユーザーにデータを公開する場合に、特に便利です。

    [エンティティ関係図] または [オブジェクト リレーショナル] ステンシルから図面ページに [ビュー] 図形をドラッグします。

    テーブルとビューの拡張されたプロパティを設定します。

    使用しているデータベース管理システム (DBMS) によっては、テーブルまたはビューの拡張プロパティを設定して、これが格納される場所を特定することができます。

    拡張プロパティを設定するテーブルまたはビューをダブルクリックし、[データベース プロパティ] ウィンドウで [カテゴリ] ボックスの一覧の [拡張] をクリックします。

    チェック句を作成します。

    チェック句を使用すると、カラムに入力されるデータが特定の範囲内の値になるように制限することができます。たとえば、"年齢" というカラムのデータが 65 を超える値になるように制限するチェック句を作成できます。

    1. テーブルをダブルクリックして、[データベース プロパティ] ウィンドウを開きます。

    2. [カテゴリ] の [カラム] をクリックし、チェック句を追加するカラムをクリックします。

    3. [編集] をクリックします。

    4. [カラム プロパティ] ダイアログ ボックスの [チェック◆] タブで、必要な制約を入力します。

      [コード] ウィンドウの [ローカル コード] にチェック句が追加されます。

    ストアド プロシージャおよびユーザー定義関数を作成します。

    ストアド プロシージャおよびユーザー定義関数を使用すると、同じ操作を繰り返し実行する場合に再利用できるコードを作成できます。ストアド プロシージャとユーザー定義関数の最大の違いは、ユーザー定義関数では値が返されますが、ストアド プロシージャは値を返さずにコードを実行します。

    1. [データベース] タブの [表示/非表示] で [コード] チェック ボックスをオンにして、[コード] ウィンドウを開きます。

    2. [グローバル コード] をクリックし、[新規] をクリックします。

    3. [コード エディタ] の [プロパティ] タブで、作成するコードの種類をクリックし、このコードの名前を入力します。

    4. [本体] タブでコードを入力し、[OK] をクリックします。

    トリガーを作成します。

    トリガは、データベース内である特定のイベントが発生した場合に、トリガに指定されている SQL コードが実行されるようにします。

    1. テーブルをダブルクリックして、[データベース プロパティ] ウィンドウを開きます。

    2. [カテゴリ] で [トリガ] をクリックし、[追加] をクリックします。

    3. [プロパティ] タブでトリガの名前を入力します。

    4. [本体] タブでコードを入力し、[OK] をクリックします。

      [コード] ウィンドウの [ローカル コード] にトリガが追加されます。

このトピックでは、データベース モデルの作成方法と、モデル作成後にこれをどのように利用できるかを説明します。[ファイル] メニューの [新規作成] をポイントし、[ソフトウェアおよびデータベース] をポイントして [データベース モデル図] をクリックすると、簡単に作業に取りかかることができます。

データベース モデルの機能が見つかりませんか。

使用しているエディションの Microsoft Office Visio には、お探しの機能が含まれていないことが考えられます。Visio のエディションを確認するには、[ヘルプ] メニューの [バージョン情報] をクリックします。エディション名がダイアログ ボックスの一番上の行に表示されます。

  • Microsoft Office Visio Standard には、データベース モデル図テンプレートはありません。

  • Microsoft Office Visio Professional は、データベース モデル図テンプレートのリバース エンジニアリング機能 (既存のデータベースを使用して Visio のモデルを作成すること) はサポートしていますが、フォワード エンジニアリング (Visio データベース モデルを使用して SQL コードを生成すること) はサポートしていません。

  • リバース エンジニアリングおよびフォワード エンジニアリングを含む完全なデータベース モデリング機能は、Visio for Enterprise Architects に搭載されています。Visio for Enterprise Architects は、Visual Studio Professional および Visual Studio Team System の業務別各エディションで提供される MSDN プレミアム サブスクリプションのもとで提供されています。

  1. データベース モデル図を作成するには、次のいずれかの操作を行います。

    ゼロから、新しいモデル図を作成します。

    基礎として利用できる既存のデータベースがない場合は、空のデータベース モデルを作成して、これに独自のテーブルやリレーションシップを追加できます。

    1. [ファイル] メニューの [新規作成] をポイントし、[ソフトウェアおよびデータベース] をポイントして [データベース モデル図] をクリックします。

    2. [データベース] メニューの [オプション] をポイントし、[図面] をクリックします。

    3. [データベース図面オプション] ダイアログ ボックスで、使用する記号セットを選択し、さらにテーブルとリレーションシップについてのその他のオプションを指定して、[OK] をクリックします。

    開始点として既存のデータベースを使用します。

    モデルをよりよく理解するため、または新しいモデルの基礎として利用できるデータベースがある場合は、リバース エンジニアリング ウィザードを使用して、データベースのスキーマ、つまり構造を抽出し、新しいモデルを構築できます。

    注: リバース エンジニアリング ウィザードを実行する前に、次の作業を実行する必要があります。

    1. Microsoft Office Excel ブックをリバース エンジニアリングする場合は、ウィザードを起動する前にブックを開き、列見出しを含むセルのグループ (または範囲) に名前を付けておく必要があります。複数のワークシートを使用する場合は、各ワークシートで列のセルのグループに名前を付けます。これらの範囲は、ウィザードではテーブルとして扱われます。セル範囲に名前を付ける方法の詳細については、Microsoft Office Excel のヘルプ トピック「Define named cell references or ranges」を参照してください。

    2. 最適な結果を得るには、リバース エンジニアリング ウィザードを実行する前に、既定のドライバをリバース エンジニアリングを行うターゲット データベースに設定します。これにより、ウィザードがネイティブなデータ型を適切にマップし、ウィザードによって抽出されたすべてのコードが [コード] ウィンドウに正しく表示されます。

    3. [ファイル] メニューの [新規作成] をポイントし、[ソフトウェアおよびデータベース] をポイントして [データベース モデル図] をクリックします。

    4. [データベース] メニューの [リバース エンジニアリング] をクリックします。

    5. リバース エンジニアリング ウィザードの最初の画面で、次の操作を行います。

      1. 使用するデータベース管理システム (DBMS) に対応した Microsoft Office Visio データベース ドライバを選択します。Visio データベース ドライバと特定の ODBC データ ソースを関連付けていない場合は、[設定] をクリックします。

        注: Excel ワークシートをリバース エンジニアリングする場合は、ODBC 汎用ドライバを選択します。

      2. 更新するデータベースのデータ ソースを選択します。既存のデータベースのデータ ソースを作成していない場合は、ここで [新規作成] をクリックして作成します。

        新しいソースを作成すると、その名前が [データ ソース] ボックスの一覧に追加されます。

      3. 設定が終了したら、[次へ] をクリックします。

    6. 各ドライバに応じたダイアログ ボックスの指示に従います。

      たとえば、[データ ソースに接続] ダイアログ ボックスでは、ユーザー名とパスワードを入力して、[OK] をクリックします。データ ソースがパスワードで保護されていない場合は、単に [OK] をクリックします。

      注: ODBC 汎用ドライバを使用する場合、リバース エンジニアリングされた情報が不完全である可能性を示すエラー メッセージが表示される場合があります。通常、これは問題にならないので、[OK] をクリックし、ウィザードの操作を続行してください。

    7. 抽出する情報の種類を表すチェック ボックスをオンにして、[次へ] をクリックします。

      注: ウィザードが抽出できる要素の全種類がすべてのデータベース管理システムでサポートされているわけではないので、一部の要素は利用できない (灰色で表示される) 場合があります。

    8. 抽出するテーブル (および必要な場合はビュー) のチェック ボックスをオンにします。すべてのテーブルを抽出する場合は、[すべて選択] をクリックし、[次へ] をクリックします。

      注: Excel ワークシートをリバース エンジニアリングする場合に、この一覧に何も表示されていない場合は、使用するワークシートで列見出しを含むセル範囲に名前を付ける必要があると思われます。

    9. 手順 5. で [ストアド プロシージャ] チェック ボックスをオンにした場合は、抽出するプロシージャを選択します。すべてのプロシージャを抽出する場合は、[すべて選択] をクリックし、[次へ] をクリックします。

    10. リバース エンジニアリングされたアイテムを現在のページに自動的に追加するかどうかを選択します。

      注: [テーブルとビュー] ウィンドウにリバース エンジニアリングされたアイテムを表示するだけでなく、ウィザードにより自動的に図面を作成するようにすることもできます。自動的に図面を作成しない場合は、[テーブルとビュー] ウィンドウからアイテムを図面ページにドラッグして、データベース モデルを手動で作成できます。

    11. 選択した内容が表示されるので、必要な情報が抽出されるよう選択されていることを確認して、[完了] をクリックします。

      選択した情報が抽出されます。抽出処理の進捗状況が [出力] ウィンドウに表示されます。

    インポートして、既存のモデルを調整します。

    既存の VisioModeler または PLATINUM ERwin モデルがある場合は、これをインポートして Visio のデータベース モデル図を作成できる可能性があります。ただし、この機能が利用できるのは、VisioModeler 2.0 以降のディクショナリ モデル (.imd) ファイルと PLATINUM ERwin 2.6、3.0、3.52 の .erx ファイルに限られます。

    1. [ファイル] メニューの [新規作成] をポイントし、[ソフトウェアおよびデータベース] をポイントして [データベース モデル図] をクリックします。

    2. [データベース] メニューの [インポート] をポイントして、[<モデルの種類> のインポート] をクリックします。

    3. インポートするモデルのパスとファイル名を入力するか、[参照] ボタンをクリックしてモデルのファイルを検索し、[開く] をクリックします。

    4. [インポート] ダイアログ ボックスで、[OK] をクリックします。

      指定したモデルのファイルがインポートされます。このとき、インポートの進捗状況が [出力] ウィンドウに表示されます。インポートされたテーブルは [テーブルとビュー] ウィンドウに表示されます。

    5. [テーブルとビュー] ウィンドウで、モデリングするテーブルを選択し、そのテーブルを図面ページへドラッグします。

  2. データベース モデル図を作成したら、このモデル図を修正する作業を始めます。テーブルやビューを追加またはカスタマイズしたり、リレーションシップを作成したり、カラムやデータ型をカスタマイズしたりします。

    テーブル

    図面にテーブルを作成するには、[エンティティ] 図形を使用します。

    1. [エンティティ関係図] または [オブジェクト リレーショナル] ステンシルから図面に [エンティティ] 図形をドラッグします。

    2. この図形をダブルクリックして [データベース プロパティ] ウィンドウを開きます。

    3. [カテゴリ] の [定義] をクリックし、テーブルの名前を入力します。

    4. [カテゴリ] の [カラム] をクリックし、名前を入力して、データ型を指定します。

    5. NULL 値を許可しないカラムに対しては、[必須] チェック ボックスをオンにします。

    6. データベース テーブルの各行を一意に識別するカラムに対して、[PK] (主キー) チェック ボックスをオンにします。

    7. [カテゴリ] の [インデックス]、[トリガ]、[チェック]、[拡張] をクリックすると、これらのオプションの要素を作成できます

    データ型や主キーなど、カラムのプロパティを追加または変更するには、[データベース プロパティ] ウィンドウを使用します。

    1. 図面のテーブルをダブルクリックします。

    2. [データベース プロパティ] ウィンドウの [カテゴリ] で、[カラム] をクリックします。

    3. 最初の空白の [物理名] セルをクリックし、名前を入力します。

    4. カラムのデータ型を変更するには、カラムの [データ型] フィールドをクリックして一覧の任意のデータ型をクリックするか、一覧に目的のデータ型を入力します。たとえば、「decimal(8,2)」や「char(30)」と入力します。

    5. NULL 値を許可しない場合は、[必須] チェック ボックスをオンにします。

    6. このカラムを主キーにする場合は、[PK] チェック ボックスをオンにします。

    7. [カラム] カテゴリをクリックしたときに表示されるプロパティ以外のカラム プロパティも表示するには、カラムを選択して、[編集] をクリックします。

    リレーションシップ

    リレーションシップでは、主キーと外部キーを使用して、データベース内のあるテーブルの行と別の関連するテーブルの行とを対応付けることができます。このようなリレーションシップは、図面に表示することができます。また、リレーションシップのカーディナリティ (一対多など) を設定して、設定したカーディナリティをクロウズ フット、リレーショナル、または IDEF1X 表記法により表現できます。データベース モデル図テンプレートでは、このうちのいずれの表記法でも、多対多のリレーションシップを表現することはできません。

    1. テーブル間のリレーションシップを作成します。

      1. リレーションシップを確立するテーブルが両方とも図面内に表示されていることを確認します。既存のデータベースからモデルをリバース エンジニアリングする場合は、いずれか片方または両方を [テーブルとビュー] ウィンドウから図面にドラッグしなければならない場合があります。

      2. リレーションシップの主キー側となるテーブルをダブルクリックします。

      3. [データベース プロパティ] ウィンドウの [カテゴリ] で、[カラム] をクリックします。

      4. グリッドで、テーブルの各行を一意に識別するために使用するカラムをクリックし、[PK] チェック ボックスをオンにして、このカラムを主キーに設定します。

      5. [オブジェクト リレーショナル] または [エンティティ関係図] ステンシルから図面ページの空白スペースに [リレーションシップ] 図形をドラッグ アンド ドロップします。

      6. テーブルの上端を親テーブルに接続します。

      7. もう一方の端を子テーブルに接続します。

        2 つめのテーブルに主キーと同じ名前のカラムが含まれていない場合は、この名前のカラムが外部キーとして 2 つめのテーブルに追加されます。

        注: リレーションシップ線が非表示になった場合は、[データベース] メニューの [オプション] をポイントし、[図面] をクリックします。[リレーションシップ] タブで、[表示] の [リレーションシップ] チェック ボックスをオンにします。

    2. リレーションシップのカーディナリティを設定します。

      1. リレーションシップをダブルクリックします。

      2. [データベース プロパティ] ウィンドウで、[カテゴリ] の [その他] をクリックします。

      3. [カーディナリティ] から、リレーションシップに最も適したカーディナリティを選択します。一対多のリレーションシップには、[0 またはそれ以上] または [1 またはそれ以上] が最適です。一対多のリレーションシップには、[0 または 1] または [1] が最適です。

  3. 図面でその他の修正 (インデックス、チェック句、トリガの作成など) を行うには、次の操作を行います。

    インデックスを作成します。

    インデックスを作成すると、クエリの実行時にデータベースのパフォーマンス (処理速度) が向上します。

    1. データベース モデル図を開きます。

    2. インデックスを追加するテーブルをダブルクリックし、[データベース プロパティ] ウィンドウの [カテゴリ] ボックスの一覧の [インデックス] をクリックします。

    3. [新規作成] をクリックします。

    4. [インデックスの作成] ダイアログ ボックスでインデックスの名前を入力して [OK] をクリックします。

    5. [インデックスの種類] ボックスの一覧で、一意性インデックスまたは非一意性インデックスを作成するオプションをクリックします。

    6. [使用可能なカラム] ボックスの一覧でインデックスに追加するカラムの名前をクリックして、[追加 >] をクリックします。

    7. [インデックスの付いたカラム] ボックスの一覧の [昇順] チェック ボックスをオンにすると昇順のインデックスが作成され、このチェック ボックスをオフにすると降順のインデックスが作成されます。

      データベース モデル図が更新されます。

    ビューを作成する

    ビューは保存されたクエリのようなものと考えることができます。ビューは、複数のテーブルに含まれる同じ情報に繰り返しアクセスする場合や、ユーザーからは実際のテーブルを変更できないようにして、ユーザーにデータを公開する場合に、特に便利です。

    [エンティティ関係図] または [オブジェクト リレーショナル] ステンシルから図面ページに [ビュー] 図形をドラッグします。

    テーブルとビューの拡張されたプロパティを設定します。

    使用しているデータベース管理システム (DBMS) によっては、テーブルまたはビューの拡張プロパティを設定して、これが格納される場所を特定することができます。

    拡張プロパティを設定するテーブルまたはビューをダブルクリックし、[データベース プロパティ] ウィンドウの [カテゴリ] ボックスの一覧の [拡張] をクリックします。

    チェック句を作成します。

    チェック句を使用すると、カラムに入力されるデータが特定の範囲内の値になるように制限することができます。たとえば、"年齢" というカラムのデータが 65 を超える値になるように制限するチェック句を作成できます。

    1. テーブルをダブルクリックして、[データベース プロパティ] ウィンドウを開きます。

    2. [カテゴリ] の [カラム] をクリックし、チェック句を追加するカラムをクリックします。

    3. [編集] をクリックします。

    4. [チェック] タブの [列のプロパティ] ダイアログ ボックスの目的の制約を入力します。選択した内容の詳細については、列とフィールド プロパティ] ダイアログ ボックス ([チェック] タブ)を参照してください。

      [コード] ウィンドウの [ローカル コード] にチェック句が追加されます。

    ストアド プロシージャおよびユーザー定義関数を作成します。

    ストアド プロシージャおよびユーザー定義関数を使用すると、同じ操作を繰り返し実行する場合に再利用できるコードを作成できます。ストアド プロシージャとユーザー定義関数の最大の違いは、ユーザー定義関数では値が返されますが、ストアド プロシージャは値を返さずにコードを実行します。

    1. [データベース] メニューの [表示] をポイントし、[コード] をクリックして、[コード] ウィンドウを開きます。

    2. [グローバル コード] をクリックし、[新規] をクリックします。

    3. [コード エディタ] の [プロパティ] タブで、作成するコードの種類をクリックし、このコードの名前を入力します。

    4. [本体] タブでコードを入力し、[OK] をクリックします。

    トリガーを作成します。

    トリガは、データベース内である特定のイベントが発生した場合に、トリガに指定されている SQL コードが実行されるようにします。

    1. テーブルをダブルクリックして、[データベース プロパティ] ウィンドウを開きます。

    2. [カテゴリ] で [トリガ] をクリックし、[追加] をクリックします。

    3. [プロパティ] タブでトリガの名前を入力します。

    4. [本体] タブでコードを入力し、[OK] をクリックします。

      [コード] ウィンドウの [ローカル コード] にトリガが追加されます。

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×