2009年5月9日土曜日

JavaでMySQLをいじってみる

DBにアクセスして,データを表示したり更新したりするプログラムを今までに書いたことがないので,簡単にやり方をまとめてみた.言語はJavaです.そろそろ他の言語も知っておきたいよねぇ・・・


1. コネクタを手に入れる.
  JavaとMySQLをつなぐには,それを担うコネクタが必要.そのコネクタを実現してるのが「Connector/J」である.これはMySQL公式サイトのダウンロードページにある.MySQLのヴァージョンが5.1だったので,それに対応したmysql-connector-java-5.1.7.zipをダウンロードする.
余談だが,OracleがSunに買収された今,MySQLの運命はどうなっていくんだろうか…

2. インストール
  インストールといっても大したことはしない.mysql-connector-java-5.1.7.zipを解凍してできたフォルダの中にあるmysql-connector-java-5.1.7-bin.jarをJavaのJREのフォルダのlib\extに入れるだけ.俺の環境でのJREのヴァージョンが1.6.0_13なので,C:\Program Files\Java\jre6\lib\extに入れればおk.

3. PATHの設定
  環境変数であるCLASSPATHに,C:\Program Files\Java\jre6\lib\ext\mysql-connector-java-5.1.7-bin.jarを追加.

4. Javaでプログラミング
  APIはJavaSEのjava.sql.*パッケージを使う.「hellodb」データベースにある「EMPLOYEES」という表から,指定されたIDに該当する従業員を表示させるプログラムとして実装してます.

import java.sql.*;

public class DBTest{
public static void main(String args[]){
String drv = "com.mysql.jdbc.Driver";
   //connectorを指定
String url = "jdbc:mysql://localhost:3306/hellodb";
   //接続するDBの場所

   if(args.length!=1){
System.out.println("usage: java DBTest < id> ");
System.exit(1);
}

try{
Class.forName(drv); //ドライバをセット
Connection con =
DriverManager.getConnection(url, "****", "****");
//DBと接続.
//第2引数はMySQLのユーザ名,第3引数はそのパスワード

String sql = "SELECT * FROM EMPLOYEES WHERE ID = ?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setString(1, args[0]);
//conに対してSQL文をセットした後,そのインスタンスに対して,
//setStringメソッドで,標準入力で得られたIDを?の位置にセット.

ResultSet res = stmt.executeQuery();
//SQL文実行.結果をresに格納

if(res.next()){ //「結果が入っているのなら」
System.out.println("ID:"+res.getString(1));
System.out.println("NAME:"+res.getString(2));
System.out.println("SECTION:"+res.getString(3));
System.out.println("PHONE:"+res.getString(4));
//各レコードを取得.引数の数字は表の列を指定している.
//1なら「左から数えて1番目の列」を意味する.
}else{
System.out.println("該当者がいません.");
}
res.close();
stmt.close();
con.close();
}catch(Exception e){
System.out.println("何かしらのエラーm9(^Д^)プギャー");
e.printStackTrace();
}
}
}

結果はこんな感じ.

それでは!

2009年5月3日日曜日

MySQLをいじってみる

仕事ではOracleのDBを使うんでしょうけど,家でちょっとDBやりたいってのには向かないので,MySQLを入れてみた.
以下,MySQLを使えるようになるまでのログ.

ちなみに,OSはWindowsXPです…

1. MySQL公式サイトで「ダウンロード」する.
今回は「MySQL Community Server」のヴァージョン5.1にしますた.

2. mysql-essential-5.1.34-win32.msiをダブルクリック.
いくつか聞かれるが,「Setup types」のところでは「custom」にして,次のウィンドウでインストール先を「C:\mysql」とする.
デフォルトは「C:\program files\mysql」で,別にこれでもいいと思うんだが…

3. 初期設定の項目では「Detailed Configuration」を選択し,各項目では以下を選択.
・Developer Machine
・Multifunctional Database
・Decision Support(DSS)/OLAP
・Manual Selected Default Character Set /Collation
・characterset → SJIS
・Install As Windows Service → チェックを入れる
・Service Name → MySQL(デフォルト)
・Launch the MySQL Server automatically → チェックを外す
・Include Bin Directory in Windows PATH → チェックを入れる

あくまで個人的に利用するだけなんで…

4. PC再起動したら,MySQLサービス起動.プロンプト上で
% net start mysql

なんかエラーが出たら,C:\mysql\my.iniを編集するか,それができなかった再インストール(´・ω・`)

5. SQLを動かす.プロンプト上で
% mysql -u root -p

その後にPASSを聞かれるが,これは初期設定時に登録したPASS

6. SQLプロンプトが表示されて,SQL文を書きまくり(・∀・)


この後はJDBCドライバを入手してJavaでDB操作だな.
てか,未だにこのブログに使い慣れないっていう…

参考URL:MySQL初心者入門講座