PHPStormはPHPのIDE環境ですが、IDEとしてJDBC経由でのDB接続機能を持っているため、DBを使ったシステムの開発を行う時に便利です。
今回はMySQLに接続してみます。
確認に使った環境は以下の通りです
OS Windows7 IDE PHPStorm 5.0.4 DB MySQL 5.5.27 Community Server (XAMPP 3.1.0に同梱版) |
MySQLへ接続できる事を確認しておく
まずは、PHPStormを使わずにMySQLへ接続できる事を確認しておきます。
今回はXAMPPを使っているので、MySQLが起動していることを確認し、Shellボタンをクリックします。
シェルでmysqlコマンドを実行してDBに接続し、適当なSQLを実行してDBにアクセスできる事を確認します。今回は以下のSQLで確認しました。
SELECT COUNT(*) FROM INFORMATIN_SCHEMA.tables; |
PHPStormでMySQLへのデータソースを作成する
次にPHPStormでMySQLへアクセスを行います。
DBアクセスを行うためには事前に接続設定(データソース)の定義が必要なので、まずデータソースを作ります。
メニューのView -> Tool Windows -> Databaseを選択します。
画面の左側にDatabaseのペインが表示されるので、適当なところを右クリックしてAdd->DB Data Sourceを選択します。
Data Source Nameに適当な名前を入力します。
次にJDBCドライバを選択します。今回はMySQLなので、”MySQL Connector/J-5.1.22″を選択します。
ちなみに余談ですが、JDBCの選択肢自体は、以下のように沢山用意されています。
DB2,Oracle,PostgreSQL,SQL Server等、メジャーどころは一通りカバーされているようです。
ドライバを選択したら、下に表示されたClick hereをクリックしてJDBCのドライバをダウンロードします。
場所はデフォルト(プロジェクトフォルダの下)でよいです。
ダウンロードはしばらく時間が掛かるので待ちます…
ダウンロードが完了したらJDBCのURLを入力します。
入力欄右にある”▼”をクリックすると、入力方法の書式が出てきます。
今回は同じPCに有るXAMPPのMySQLなので、”jabc:mysql://localhost/”にしておきます。
(他のPCのDBにつなぐ時や、他にユーザを作っている場合指定が必要です)
URLが入力できたら、画面右下の”Test connetion”をクリックします。
すると、DBに接続できるかのチェックが行われます。
Connection successfulが出ればOKです。
次にConsoleタブを指定してMySQLを選択し、OKをクリックします。
データソースの一覧に、登録したものが表示されれば、データソースの作成は完了です。
作成したデータソースに対してSQLを発行する
次は作成したデータソースを使って、実際にSQLを実行してみます。
まずは、スキーマ定義とテーブルの中身を確認してみます。
項目を右クリックしてRefreshを選択すると、テーブル一覧が表示されます。
↓
テーブルのツリーを展開すると、列とデータ型の一覧が確認できます。
テーブルを選択してF4を押すか右クリックからEdit Tableを選択すると、データを確認できます。
次にSQLを実行して、データの検索を行います。
データソースを右クリックしてOpen Database Consoleを選択します。
エディタの表示欄にタブが追加されるので、SQLを入力して”Ctrl+Enter”(もしくは右上にある緑の▼マークをクリック)します。
画面下のDatabase Consoleウィンドウにクエリの実行結果が表示されます。
このSQL入力ウィンドウ、入力中はコードの補完(候補の表示)が行われるので便利です。
(表示されない場合はShift+Spaceを押してしてみてください)
PHPコード中のSQLを実行させる
PHPStormのDB連携はこれだけではありません。さらに、PHPコード中に書いたSQLも実行できてしまいます。
まずはヒアドキュメント内にSQLを記述します。
この際IDは以下のように”SQL”にして下さい(“SQL”以外のIDだと上手く動作しません)。
SQLの記述後、クエリにカーソルを当てると電球マークが出てくるので”▼”をクリックします。
一覧からRun Query in Concoleを選択すると、Runnningの中に登録したデータソースが表示されるので、クリックします。
↓
するとヒアドキュメント内のSQLが実行されます。
SQLの先頭に”EXPLAIN”を一時的に入力し再度実行すると、SQLの実行計画も確認可能です。
これでちゃんとIndexが使われているか?などのチェックが出来ます。
この実行結果のタブをドラッグすると、別ウィンドウに分離する事も可能です。
複数のクエリの結果を見比べる場合に便利です。
また、矢印アイコンでSQLの再実行が可能です。
関連記事
コメントを残す