corner imagecorner image
IDEPlatformPluginsDocs & SupportCommunityPartners

MySQL データベースへの接続

このドキュメントでは、NetBeans IDE 6.7 から MySQL データベースへの接続を設定する方法を示します。接続すると、IDE のデータベースエクスプローラで MySQL の操作を開始して、新しいデータベースや表の作成、表へのデータの生成、およびデータベース構造や内容への SQL クエリーの実行を行うことができます。このチュートリアルは、データベース管理に関する基礎知識があり、NetBeans IDE での MySQL の操作にその知識を活かすことを考えている初心者向けに作成されています。

MySQL は、その速さ、柔軟性、および信頼性により、Web アプリケーションで一般的に利用されている人気のオープンソースリレーショナルデータベース管理システム (RDBMS) です。MySQL は、データベース内のデータへのアクセスおよび処理に SQL (Structured Query Language) を使用しています。

予想される所要時間: 30

目次

このページの内容は NetBeans IDE 6.9 および 7.0 が対象です

このチュートリアルに従うには、次のソフトウェアとリソースが必要です。

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE 6.8、6.9、または 7.0 Java ダウンロード
Java Development Kit (JDK) version 6 または version 5
MySQL データベースサーバー version 5.x

注: このチュートリアルでは、MySQL RDBMS がコンピュータにすでにインストールされていて、構成されていることを想定しています。はじめてインストールする場合は、公式な MySQL のドキュメントを参照してください。「Windows オペレーティングシステムでの MySQL データベースサーバーの設定」を参照することもできます。

MySQL サーバープロパティーの構成

NetBeans IDE 6.8 には、MySQL RDBMS 用のサポートがバンドルされています。NetBeans IDE で MySQL データベースにアクセスできるようにする前に、MySQL サーバーのプロパティーを設定します。

  1. 「サービス」ウィンドウで「データベース」ノードを展開し、「MySQL サーバー」ノードを右クリックして、「プロパティー」を選択します。

    「MySQL サーバープロパティー」ダイアログが開きます。

    「MySQL サーバープロパティー」ダイアログ: 基本プロパティー
  2. IDE によって、デフォルトのサーバーホスト名に「localhost」が入力され、デフォルトのサーバーポート番号に「3306」が入力されます。この情報が正しい場合は、管理者のユーザー名を入力します (表示されていない場合)。

    注: データベースを作成または削除するには管理者アクセスが必要です。

  3. 管理者のパスワードを入力します。デフォルトでは空白に設定されています。

    注: 空白のパスワードも有効です。

  4. ダイアログの最上部にある「管理プロパティー」タブをクリックします。

    「管理プロパティー」タブが表示され、MySQL サーバーを管理するための情報を入力できます。
  5. 「管理ツールのパスまたは URL」フィールドに MySQL 管理ツール、PhpMyAdmin、またはその他の Web ベース管理ツールなどの MySQL 管理アプリケーションの場所を入力するか、参照して選択します。

    注: mysqladmin は、MySQL のインストールディレクトリの bin フォルダにある MySQL 管理ツールです。これはコマンド行ツールであり、IDE での使用には適していません。

    管理ツールに引数を付ける場合は、「引数」フィールドに引数を入力します。
  6. 「起動コマンドのパス」には、MySQL 起動コマンドの場所を入力するか、参照して選択します。起動コマンドを探すには、MySQL インストールディレクトリの bin フォルダにある mysqld を探します。

    注: Unix および NetWare 用の推奨バイナリは mysql_safe です。MySQL が AMP インストールの一部としてインストールされた場合、起動コマンドも異なる場合があります。

    起動コマンドに引数を付ける場合は、「引数」フィールドに引数を入力します。
  7. 「停止コマンドのパス」には、MySQL 停止コマンドの場所を入力するか、参照して選択します。これは通常、MySQL インストールディレクトリの bin フォルダにある mysqladmin のパスです。コマンドが mysqladmin の場合、「引数」フィールドに「-u root stop」と入力し、root にサーバーを停止するアクセス権を許可します。
  8. 完了すると、「管理プロパティー」タブは次の図のようになるはずです。構成に問題がなければ、「了解」をクリックします。

    「MySQL サーバープロパティー」ダイアログ: 管理プロパティー

MySQL サーバーの起動

MySQL データベースサーバーに接続できるようになる前に、まず MySQL データベースサーバーがマシンで稼働していることを確認します。「サービス」の「MySQL サーバー」ノードは、次の画像に示すように、MySQL データベースサーバーが接続されているかどうかを示します。

MySQL データベースサーバーが稼働していない

MySQL データベースサーバーがマシンで稼働していることを確認したら、「サービス」ウィンドウで「データベース」>「MySQL サーバー」ノードを右クリックし、「接続」を選択します。

MySQL データベースサーバーが稼働しているところ

「MySQL サーバー」ノードを展開すると、使用可能な MySQL データベースがすべて表示されます。

データベースインスタンスの作成と接続

データベースと対話する一般的な方法は、SQL エディタ経由で行う方法です。NetBeans IDE には、このための SQL エディタが組み込まれています。一般に SQL エディタは、接続ノード (または接続ノードの子のノード) の右クリックメニューにある「コマンドを実行」オプションを使用してアクセスできます。MySQL サーバーに接続しているので、SQL エディタを使用して新しいデータベースインスタンスを作成できます。このチュートリアルでは、MyNewDatabase というインスタンスを作成します。

  1. 「サービス」ウィンドウで「MySQL サーバー」ノードを右クリックし、「データベースを作成」を選択します。

    「MySQL データベースの作成」ダイアログが開きます。
  2. 「MySQL データベースの作成」ダイアログで、新しいデータベースの名前を入力します。このチュートリアル用に MyNewDatabase を使用します。この時点では、チェックボックスは選択解除したままにしておきます。

    「MySQL データベースの作成」ダイアログ

    注: 特定のユーザーにフルアクセスを許可することもできます。デフォルトでは、管理ユーザーのみが、特定のコマンドを実行するためのアクセス権を持っています。ドロップダウンリストで、指定したユーザーにそれらのアクセス権を割り当てることができます。

  3. 「了解」をクリックします。

    「サービス」ウィンドウの「MySQL サーバー」ノードの下に新しいデータベースが表示されます。

データベース表の作成

MyNewDatabase に接続しているので、表の作成、表へのデータの生成、表に保持されているデータの変更方法の学習を開始できます。これによって、NetBeans IDE の SQL ファイル用のサポートと同様に、データベースエクスプローラが提供する機能を詳しく見ることができます。

MyNewDatabase には、現在何もデータが含まれていません。NetBeans IDE では、「表を作成」ダイアログを使用するか、SQL クエリーを入力し、SQL エディタから直接実行することで、データベースに表を追加できます。ここでは、次の両方の方法について学習できます。

  1. SQL エディタの使用
  2. 「表を作成」ダイアログの使用

SQL エディタの使用

  1. データベースエクスプローラの「MyNewDatabase」接続ノード (接続ノードのアイコン) を展開します。ここには、「表」、「ビュー」、および「プロシージャ」の 3 つのサブフォルダがあります。データベースエクスプローラで「表」フォルダから「コマンドを実行」を選択します。メインウィンドウ内に SQL エディタが開き、空白のキャンバスが表示されます。

    NetBeans IDE 6.7 Beta では、データベース接続ノードを展開すると、スキーマのサブノードがいくつか表示されます。

  2. SQL エディタで次のクエリーを入力します。これは、作成する Counselor 表の表定義です。
    CREATE TABLE Counselor (
        id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
        firstName VARCHAR (50),
        nickName VARCHAR (50),
        lastName VARCHAR (50),
        telephone VARCHAR (25),
        email VARCHAR (50),
        memberSince DATE DEFAULT '0000-00-00',
        PRIMARY KEY (id)
                );
    注: SQL エディタで作成した文およびクエリーは、SQL (Structured Query Language) で構文解析されます。SQL は厳密な構文規則に準拠しています。IDE のエディタで作業をするときは、これらの規則を理解しておいてください。クエリーを実行すると、SQL エンジンからのフィードバックが「出力」ウィンドウに生成され、実行に成功したかどうかが示されます。
  3. クエリーを実行するには、最上部のタスクバーにある「SQL を実行」(「SQL を実行」ボタン) ボタン (Ctrl-Shift-E) をクリックするか、SQL エディタ内を右クリックして、「文を実行」を選択します。IDE によって、データベースに Counselor 表が生成され、「出力」ウィンドウに次のようなメッセージが表示されます。

    「出力」ウィンドウに実行成功が示される
  4. 変更内容を確認するには、データベースエクスプローラで「表」ノードを右クリックし、「再表示」を選択します。「再表示」オプションは、指定したデータベースの現在の状態に合わせてデータベースエクスプローラの UI コンポーネントを更新します。データベースエクスプローラの表の下に「Counselor」表ノード (表ノードのアイコン) が新しく表示されます。この表ノードを展開すると、主キー (主キーノードのアイコン) で始まる、作成した列 (フィールド) を確認できます。

    データベースエクスプローラに表示された「Counselor」表

「表を作成」ダイアログの使用

  1. データベースエクスプローラで「表」ノードを右クリックし、「表を作成」を選択します。「表を作成」ダイアログが開きます。
  2. 「表名」テキストフィールドに「Subject」と入力します。
  3. 表示された最初の行で、「キー」チェックボックスを選択します。表の主キーを指定します。リレーショナルデータベースにあるすべての表に、主キーを含める必要があります。「キー」チェックボックスを選択すると、「索引」および「一意」チェックボックスが自動的に選択され、「Null」チェックボックスが選択解除されます。これは、主キーを使用してデータベース内の行を一意に識別するためです。デフォルトでは、主キーは表の索引を形成します。すべての行が識別される必要があるため、主キーに Null 値を含むことはできません。
  4. 「列名」に「id」と入力します。「データ型」に、ドロップダウンリストから「SMALLINT」を選択し、「列を追加」ボタンをクリックします。
  5. 次の表に示すように、残りのすべてのフィールドを指定して、この手順を繰り返します。

    キー 索引 Null 一意 列名 データ型 サイズ
    [選択] [選択] [選択] id SMALLINT 0
    [選択] name VARCHAR 50
    [選択] description VARCHAR 500
    [選択] FK_counselorID SMALLINT 0

    次の各レコードのデータを保持する Subject という表を作成しています。

    • 名前: 用件の名前
    • 説明: 用件の説明
    • カウンセラー ID: Counselor 表の ID に対応するカウンセラー ID
    「Subject」表のフィールドを選択した状態の「表を作成」ダイアログ

    「表を作成」ダイアログのフィールドが前述の内容と一致していることを確認し、「了解」をクリックします。IDE によってデータベースに Subject 表が生成され、データベースエクスプローラの「表」の下に新しい「Subject」表 (表ノードのアイコン) がすぐに表示されていることを確認できます。

表データの操作

表データの操作には、NetBeans IDE の SQL エディタを利用できます。データベースに対して SQL クエリーを実行することによって、データベース構造内で保持されているデータを追加、変更、および削除できます。Counselor 表に新規レコード (行) を追加する手順は、次のとおりです。

  1. データベースエクスプローラで「表」フォルダから「コマンドを実行」を選択します。メインウィンドウ内に SQL エディタが開き、空白のキャンバスが表示されます。
  2. SQL エディタで次のクエリーを入力します。
    INSERT INTO Counselor
    VALUES (1, 'Ricky', '"The Dragon"', 'Steamboat','334 612-5678', 'r_steamboat@ifpwafcad.com', '1996-01-01')
  3. クエリーを実行するには、SQL エディタ内を右クリックし、「文を実行」を選択します。「出力」ウィンドウで、クエリーの実行に成功したことを示すメッセージを確認できます。
  4. Counselor 表に新しいレコードが追加されたことを確認するには、データベースエクスプローラで「Counselor」表ノードを右クリックし、「データを表示」を選択します。メインウィンドウに新しい SQL エディタ区画が開きます。「データを表示」を選択すると、表からすべてのデータを選択する SQL クエリーが SQL エディタの上部区画に自動的に生成されます。下部領域の表ビューに文の実行結果が表示されます。この例では、Counselor 表が表示されます。SQL クエリーから提供されたデータを使用して、新しい行が追加されています。

    Counselor 表に追加された新しいレコード

SQL スクリプトの実行

NetBeans IDE で表データを管理するもう 1 つの方法として、外部 SQL スクリプトを直接 IDE で実行する方法があります。ほかの場所で SQL スクリプトを作成していた場合は、そのスクリプトを NetBeans IDE で開き、SQL エディタで実行すればよいだけです。

実証のため、ifpwafcad.sql をダウンロードし、コンピュータ上の場所に保存してください。このスクリプトは、前に作成した表 (CounselorSubject) に似た 2 つの表を作成し、それらの表にすぐにデータを生成します。

このスクリプトは、同じ表がすでに存在する場合はそれらの表を上書きするため、スクリプトを実行したときに新しい表が作成されることが明確になるように、ここで Counselor 表と Subject 表を削除します。表を削除するには、次の手順に従います。

  1. データベースエクスプローラで選択した表のノードを右クリックし、「削除」を選択します。
  2. 表示される「オブジェクト削除の確認」ダイアログで「はい」をクリックします。データベースエクスプローラから表ノードが自動的に削除されます。

    注: このダイアログを表示する前に、表以外も削除できます。

MyNewDatabase に対して SQL スクリプトを実行するには、次の手順に従います。

  1. IDE のメインメニューから「ファイル」>「ファイルを開く」を選択します。ファイルブラウザで、ifpwafcad.sql を以前に保存した場所に移動し、「開く」をクリックします。SQL エディタで自動的にスクリプトが開きます。
  2. エディタの最上部のツールバーにある「接続」ドロップダウンボックスで MyNewDatabase への接続が選択されていることを確認します。

    SQL エディタのツールバーにある「接続」ドロップダウンボックス
  3. SQL エディタのタスクバーにある「SQL を実行」(「SQL を実行」ボタン) ボタンをクリックします。選択したデータベースに対してスクリプトが実行され、「出力」ウィンドウにフィードバックが生成されます。
  4. 変更内容を確認するには、「実行時」ウィンドウで「MyNewDatabse」接続ノードを右クリックし、「再表示」を選択します。「再表示」オプションは、指定したデータベースの現在の状態に合わせてデータベースエクスプローラの UI コンポーネントを更新します。SQL スクリプトからの 2 つの新しい表が、データベースエクスプローラの MyNewDatabse の下に表ノードとして表示されます。
  5. 選択されている表ノードの右クリックメニューから「データを表示」を選択し、新しい表に含まれているデータを表示します。このようにして、表形式のデータと SQL スクリプトに含まれるデータを比較して、両者が同じかどうかを確認できます。

関連項目

これで「MySQL データベースへの接続」チュートリアルは終わりです。このチュートリアルでは、コンピュータに MySQL を構成し、NetBeans IDE からそのデータベースサーバーへの接続を設定する方法を紹介しました。また、IDE のデータベースエクスプローラで MySQL を操作して、新しいデータベースインスタンスや表の作成、表へのデータの生成、および SQL クエリーの実行を行う方法も説明しました。

関連するチュートリアルおよびさらに高度なチュートリアルについては、次のリソースを参照してください。