Copyright: Visual Help Copyright(c) 1993 Firas Bushnaq


データ マネージャ

データ マネージャを使用すると、Microsoft Jet データベースを新しく作成することができます。また、各種形式のデータベースを調べたり、マップすることができます。また、外部データベースからアタッチ テーブルを作成することもできます。

データ マネージャ

新規データベースの作成

新規テーブルの作成

新規インデックスの作成

インデックス追加時のエラー

[ファイル] メニューのコマンド

テーブルのデータの操作

データベース オブジェクトの名前付け規則

テーブル間のリレーション

テーブルのアタッチ

多対多リレーション

SQL ステートメント


データ マネージャ

このアプリケーションを使用すると、Microsoft Jet データベースを新しく作成することができます。また、各種形式のデータベースを調べたり、マップすることができます。また、外部データベースからアタッチ テーブルを作成することもできます。次の表は、データベースの種類とそのデータベースに対して可能な操作を示しています。

データベースの種類	可能な操作

Microsoft Access	作成、アタッチ、マップ

Paradox 3.X、4.X	アタッチ、マップ

dBASE III、IV	アタッチ、マップ

FoxPro 2.0、2.5 	アタッチ、マップ

Btrieve	アタッチ、マップ

ODBC	アタッチ、マップ

Visual Basic では、Microsoft Access と同じデータベース エンジンを使用します。Visual Basic またはデータ マネージャで作成したデータベースは Microsoft Access で、Microsoft Access で作成したデータベースは Visual Basic およびデータ マネージャで処理できます。このヘルプ ファイルは、Visual Basic または Jet データベース (Visual Basic、Microsoft Access、またはデータ マネージャで作成したデータベース) を対象にしています。


新規データベースの作成

関連項目

データ マネージャで作成したデータベースは Microsoft Jet データベースであり、Microsoft Access Version 2.0 および Visual Basic Version 4.0 の両方で編集することができます。

[データ マネージャ] ウィンドウの [ファイル] - [新規データベースの作成] コマンドを選択します。データベース ファイルを保存するフォルダを選択します。新規フォルダを作成するときは、[新しいフォルダの作成] ボタンを選択します。次にファイル名を入力します。なお、ファイル名の拡張子には .MDB を指定します。このダイアログ ボックスで、既存の .MDB ファイルの名前を入力したり、選択することはできません。[保存] ボタンを選択して、新しいデータベース名を設定します。

新しいデータベース ファイルを作成したら、データを格納するテーブル、フィールド、およびインデックスを追加します。


関連項目

新規テーブルの作成


新規テーブルの作成

関連項目

データベースのデータは、すべてテーブルに格納されます。各テーブルは、1 つまたは複数のフィールドの集まりとして定義されます。各フィールドは、データ型、サイズ、およびその他の属性を指定して格納されるデータの種類を示します。

テーブル作成では、関連するデータをグループ化します。たとえば、BIBLIO.MDB サンプル データベースでは、各出版社に関する情報が Publishers テーブルに格納されています。また、1 つの出版社が複数の書籍および複数の著者の書物を出版するため、著者および書籍に関する情報は、別のテーブルにそれぞれ格納されています。

新規テーブルの作成

1.	テーブルを新しく作成するには、[テーブル/クエリー] ダイアログ ボックスの [新規作成] を選択します。[新規テーブルの追加] ダイアログ ボックスが表示されます。

2.	テーブル名とフィールド名を入力し、[データ型] ボックスからデータ型を選択します。次に [＞] ボタンを選択して、フィールド名をリストに追加します。リスト内でフィールド名を移動するには、[上へ] および [下へ] ボタンを選択します。

3.	テーブルを保存するには、[OK] ボタンを選択します。

次のボタンを使用してテーブルを処理することができます。

ボタン	内容

[開く]	指定したデータベースの既存のテーブルを開き、データを表示します。

[新規作成]	新しくテーブルを作成します。

[デザイン]	既存のテーブルを開き、テーブルの構造を表示または修正します。

[削除]	既存のテーブルを削除します。

[アタッチ テーブル]	新しいテーブルのアタッチ、または既存のテーブルの再アタッチを行います。

[リレーション]	テーブル間のデータの関連付けを定義します。

フィールド名の構文は、データベース エンジンの種類によって異なります。Jet データベースでは、フィールド名の構文は、他のデータベース オブジェクトの構文と同じです。「データベース オブジェクトの名前付け規則」を参照してください。データ型は、フィールドに格納されている情報の種類、たとえば、数字または文字列を設定します。ほとんどのデータ型では、サイズは自動的に設定されます。テキスト フィールドでは、フィールドの最大必要バイト数を入力します。ただし、レコードの最大長は、2,000 バイトに制限されています。

注   データベースにフィールドを追加することはできますが、フィールドの名前を変更、修正、または削除する場合は、テーブル全体を削除し、各フィールドをもう一度作成する必要があります。したがって、テーブルを設計するときは注意してください。


関連項目

既存のテーブルを開く

データベース構造の変更

テーブルの削除


テーブルの構造

関連項目

1.	必要なフィールドをすべて作成した後でテーブルの構造を編集するには、[テーブル/クエリー] ダイアログ ボックスの一覧からテーブルを選択し、[デザイン] ボタンを選択して [テーブル エディタ] ダイアログ ボックスを開きます。

次のボタンを使用して、テーブルの構造を変更することができます。

ボタン	内容

[編集]	既存のフィールドを編集します。

[追加]	新しいフィールドを追加します。

[削除]	既存のフィールドを削除します。

[インデックス]	インデックスを編集、追加、または削除します。

[キー]	主キーおよび外部キーを選択します。

[閉じる]	[テーブル エディタ] ダイアログ ボックスを閉じます。

2.	[テキスト エディタ] ダイアログ ボックスの [インデックス] ボタンを選択して、[インデックス] ダイアログ ボックスを開きます。[追加] ボタンを選択して、テーブルに必要なインデックスを作成します。

通常、このインデックスを使用して、パフォーマンスを向上させたり、テーブル内の重複したレコードを削除します。

フィールドの場合と同様に、インデックス名の構文は、データベース エンジンの種類によって異なります。Jet データベースでは、インデックス名の構文は、他のデータベース オブジェクトの構文と同じです。「データベース オブジェクトの名前付け規則」を参照してください。

3.	一覧から 1 つまたは複数のフィールド名を選択し、[追加] ボタンを選択して、これらのフィールド名を [インデックス中のフィールド] ボックスに追加します。

これらのフィールドの内容により、どのようにテーブルを並べ替えるか、またはどのような結果を返すかを設定します。インデックスを作成するとき、フィールド数に制限はありませんが、フィールド名全体の長さは 254 文字以内に制限されています。さらに、一部のフィールドはインデックスとして指定できません。たとえば、メモ型のフィールドや OLE オブジェクト型のフィールドは指定できません。

4.	Visual Basic で、このインデックスを基にテーブル内のレコードの重複を避けるには、[値要求] および [固有インデックス] チェック ボックスをオンにします。Visual Basic でこのインデックスを主インデックスとして設定するには、[主キー] チェック ボックスをオンにします。

5.	[追加-昇順] または [追加-降順] ボタンを選択して、このインデックスを基にテーブルの並べ替え方法を指定します。

6.	必要なインデックスをすべて作成したら、[OK] ボタンを選択します。

データベース構造を作成した後、そのデータベースにデータを入力するための Visual Basic アプリケーションを作成したり、データ マネージャを使用してテーブルを開き直接編集したりできます。「既存のテーブルを開く」および「データベース構造の変更」を参照してください。


関連項目

既存のテーブルを開く

データベース構造の変更

テーブルの削除


既存のテーブルを開く

関連項目

既存のテーブルを開くには、[ファイル] - [データベースを開く] コマンドを選択し、ファイルを指定して [開く] ボタンを選択します。[テーブル/クエリー] ダイアログ ボックスの一覧からテーブル名を選択し、[開く] を選択します。


関連項目

新規テーブルの作成


テーブルの削除

関連項目

既存のテーブルを削除するには、[ファイル] - [データベースを開く] コマンドを選択し、ファイルを指定して [開く] ボタンを選択します。[テーブル/クエリー] ダイアログ ボックスの一覧からテーブル名を選択し、[削除] ボタンを選択します。アタッチ テーブルを削除しても元のテーブルは削除されず、アタッチの設定だけが削除されます。


関連項目

新規テーブルの作成


データベース設計の変更
データベース構造の変更

[テーブル/クエリー] ダイアログ ボックスの一覧から既存のテーブル名を選択し、[デザイン] ボタンを選択して、[テーブル エディタ] ダイアログ ボックスを開きます。このダイアログ ボックスで、フィールドの編集、追加、および削除をしたり、キーを指定できます。


新規インデックスの作成

1.	[テーブル/クエリー] ダイアログ ボックスで既存のテーブル名を選択し、[デザイン] ボタンを選択します。[テーブル エディタ] ダイアログ ボックスが表示されます。

2.	[インデックス] ボタンを選択し、[追加] ボタンを選択します。インデックス名を入力し、必要な項目を設定します。[テーブル中のフィールド] ボックスから 1 つまたは複数のフィールド名を選択し、[追加] ボタンを選択します。

選択したフィールド名は、[インデックス中のフィールド] ボックスに移動します。これらのフィールドの内容により、どのようにテーブルを並べ替えるか、またはどのような結果を返すかを設定します。インデックスを作成するとき、フィールド数に制限はありませんが、フィールド名全体の長さは 254 文字以内に制限されています。さらに、一部のフィールドはインデックスとして指定できません。たとえば、メモ型のフィールドや OLE オブジェクト型のフィールドは指定できません。テーブルに必要なインデックスをすべて作成します。

フィールドの場合と同様に、インデックス名の構文はデータベース エンジンの種類によって異なります。Microsoft Jet データベースでは、インデックス名の構文は、他のデータベース オブジェクトの構文と同じです。「データベース オブジェクトの名前付け規則」を参照してください。

3.	必要なインデックスをすべて作成したら、[OK] ボタンを選択します。

注   通常、インデックスを使用して、パフォーマンスを向上さたり、テーブル内の重複レコードを削除します。


[ファイル] メニューのコマンド

[ファイル] メニューでは、次のコマンドを利用できます。

コマンド

[新規データベースの作成]

[データベースを開く]

[データベースの最適化]

[データベースの変換]

[データベースの暗号化]

[データベースの解読]

[データベースの修復]

[データ マネージャの終了]


インデックス追加時のエラー

インデックスを作成するとき、フィールド数に制限はありませんが、フィールド名全体の長さは 254 文字以内に制限されています。さらに、一部のフィールドはインデックスとして指定できません。たとえば、メモ型のフィールドまたは OLE オブジェクトのフィールドは指定できません。


テーブルのデータの操作

データを処理するには、まずテーブルを開き、開いたテーブルに必要な処理を行います。

レコードの内容を変更するには、各フィールドを選択してデータを編集します。変更後、別のレコードに移動すると、変更内容がデータベースに保存されます。

新しいレコードをテーブルの最後に追加するには、[追加] ボタンを選択し、フィールドにデータを入力します。[更新] ボタンを選択して変更内容を保存します。

カレント レコードを削除するには、[削除] ボタンを選択します。レコードはすぐに削除され、復元できません。

特定のレコードを見つけるには、[検索] ボタンを選択します。検索するフィールド、演算子、および値を選択します。この式の構文は、Visual Basic のオンライン ヘルプで示される Find メソッドの構文と同じです。通常、この構文は、SQL (Structured Query Language) の WHERE 句の構文と似ています。

レコードを再び取得するには、[再表示] ボタンを選択します。


データベース オブジェクトの名前付け規則

Visual Basic データベース オブジェクトの名前付けに関して、特定の規則があります。Visual Basic では、最大 64 文字のデータベース オブジェクト名を設定できます。オブジェクト名として、アルファベット、ひらがな、カタカナ、数字、スペース、および特殊文字の一部を組み合わせて設定できます。ただし、特殊文字のピリオド (.)、感嘆符 (!)、および角かっこ ([ ]) は使用できません。また、先頭にスペースを入れたり、制御文字 (ASCII コードが 0 から 32 までの文字) を使用することはできません。


テーブル間のリレーション

[テーブル/クエリー] ダイアログ ボックスの一覧からテーブル名を選択します。[リレーション] ボタンを選択すると、[リレーション] ダイアログ ボックスが表示されます。この[リレーション] ダイアログ ボックスで、データベースのテーブル間のリレーションを定義することができます。複数のテーブルを基にクエリーを実行したり、フォームやレポートを処理する場合、データ マネージャは、これらのリレーションを使用して、関連するデータを検索します。

[主テーブル]

データベースのテーブルを一覧表示します。別のテーブルと関連づける主キー フィールドを含むテーブルを選択します。

[主キー フィールド]

選択した主テーブルの主キー フィールドを表示します。

[種類]

リレーションの方法を、[一対一] または [一対多] のいずれかから選択します。

オプション	説明

[一対一]	テーブル間の一対一リレーションを確立します。

[一対多]	テーブル間の一対多リレーションを確立します。

[リレーション テーブル]

データベースのすべてのテーブルを一覧表示します。主テーブルと関連付けるテーブルを選択します。

[一致するフィールド]

関連テーブルのフィールドを一覧表示します。主テーブルの主キー フィールドと一致するフィールドを選択します。

[参照整合性]

参照整合性を適用するためには、このチェック ボックスをオンにします。参照整合性を適用しない場合は、このチェック ボックスをオフにします。

[追加] ボタン

指定した内容に従って、リレーションを作成します。

[削除] ボタン

リレーションを削除します。

[候補]

関連テーブルの中から主キー フィールドと同じ名前を持つフィールドを探します。

[閉じる] ボタン

ダイアログ ボックスを閉じます。


テーブルのアタッチ

1.	[テーブル/クエリー] ダイアログ ボックスの [アタッチ テーブル] ボタンを選択します。

[アタッチ テーブル] ダイアログ ボックスが表示されます。

2.	[新規] ボタンを選択し、フィールドに情報を入力し、[アタッチ] ボタンを選択します。

この操作により、別のデータベース アプリケーションのテーブルとのリンクが作成され、そのテーブルのデータの表示および編集ができるようになります。アタッチ テーブルは、元のデータベース アプリケーションでも継続して使用でき、データベース マネージャからも使用できます。他の Microsoft Jet データベースのテーブルもアタッチすることができます。別のデータベースのテーブルをアタッチすることにより、そのデータベースを開かなくてもテーブルを使用することができます。

注   Paradox、Btrieve、または SQL サーバー データベースのテーブルをアタッチする場合、他のアプリケーションで設定されたパスワードを指定しなければならないときがあります。テーブルをアタッチし、パスワードを指定すると、データ マネージャは、後でこのテーブルを開くことができるように、このパスワードをデータベースに格納します。この機能は、SQL サーバー データベースでは、省略可能です。また、パスワードを保護するために、パスワードを持つアタッチ テーブルを含むデータベースを暗号化する場合もあります。

次のデータベース アプリケーションのテーブルをアタッチすることができます。

Microsoft Access (開いているデータベース以外のデータベース)

Paradox (version 3.x、4.x の .DB ファイル)

FoxPro (version 2.0、2.5 の .DBF ファイル)

dBASE III、dBASE IV (.DBF ファイル)

Btrieve (データ定義ファイル FILE.DDF、FIELD.DDF 付き)

ODBC

SQL データベースを処理する場合、[SQL Server ログオン] ダイアログ ボックスが表示されます。各 ODBC ドライバのダイアログ ボックスのオプションについては、ODBC ドライバに関する情報を参照してください。

外部テーブルをアタッチしたら、[テーブル エディタ] ダイアログ ボックスに、そのテーブルのフィールド プロパティを設定します。

アタッチ テーブルの構造は変更できませんが、フィールド プロパティは設定することができます。


多対多リレーションの定義

2 つのテーブル間の多対多リレーションでは、一方のテーブルの 1 つのレコードを他方のテーブルの複数のレコードに関連付けることができます。

多対多リレーションを定義するには、この 2 つのテーブルを結合するための 3 つめのテーブルを作成します。

1.	多対多リレーションを定義するテーブルを作成します。

2.	3 つめのテーブル (結合用のテーブル)を作成し、このテーブルに他の 2 つのテーブルの主キー フィールドを設定します。このテーブルでは、主キー フィールドは、外部キーとして機能します。

3.	3 つめのテーブルでは、主キーを、他の 2 つのテーブルの主キー フィールドをすべて含むように設定します。

4.	2つの主テーブルと 3 つめのテーブルとの間に、一対多リレーションをそれぞれ定義します。

注   3 つめのテーブルには、通常のテーブル作成と同様に、主キー フィールド以外のフィールドを追加することができます。


SQL ステートメント

データベースに対してクエリーを実行するには、まずデータベースを選択し、開きます。[SQL ステートメント] ダイアログ ボックスで、クエリーを入力し、[実行] ボタンを選択します。クエリーを保存するには、[保存] ボタンを選択し、次に QueryDef オブジェクト名を入力し、[OK] ボタンを選択します。[SQL ステートメント] ダイアログ ボックスの設定および入力を消去するには、[クリア] ボタンを選択します。