ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

Hello World程度のデータベース(その36:実践編 DBアクセスプログラム)

2007-09-09 21:44:10 | 土日シリーズ

情報処理とは何から、データベースの基本的な話(情報処理試験のデータベーススペシャリスト程度の話まで)を書く、土日のシリーズ「Hello World程度のデータベース」です。

 このシリーズのはじめは、理論的なことを書いてきて、今は、実際にデータベースアクセスプログラムを書いてみましょう!ということになりました。

 一連の手順はここに書いてあって、今回は、「DBアクセスプログラム」です。




■前提

 前回作成したように、HelloDBデータベースに、KeyWordTBLが作成されていて、データが(前回示したように)入っているものとします。

 JDBCのJarは、ここでしめしたように、ダウンロードしてきて、今回、javacでコンパイルするときや、javaで実行するときに、そのJDBCのパスが通っているものとします。




■ソース

で、JDBCのプログラムを書くわけですが、こんなかんじです。
package db;
import java.sql.*;
public class DbAccess {
	public String getVal(String keyword)
	{
		String kekka ="";		//	返り値
		
	    Connection con = null;
	    Statement stmt = null;
		try
		{
		      // ドライバクラスをロード
		      Class.forName("org.gjt.mm.mysql.Driver"); // MySQLの場合

		      // データベースへ接続
		      String url = "jdbc:mysql:///HelloDB?useUnicode=true&characterEncoding=utf8";
		      con = DriverManager.getConnection(url,"root","rootのパスワード");

		      // ステートメントオブジェクトを生成
		      stmt = con.createStatement();

		      //	SQLの生成
		      String sql = "SELECT * FROM KeyWordTBL WHERE KEYWORD='" + keyword + "';";

		      // クエリーを実行して結果セットを取得
		      ResultSet rs = stmt.executeQuery(sql);

		      //	検索結果を返す(1件だけ、見つかるはず)
		      if ( rs.first()	==	true)
		      {
		    	  kekka = rs.getString("VAL");
		      }

		      //	あとしまつ
		      stmt.close();
		      con.close();
		}
		catch (Exception e)
		{
		      e.printStackTrace();
		}

		//	結果を返す
	    return	kekka;
	}
}

(上記< > ¥は、本当は半角)

いつもは抽象的に書いてありますが、今回は、必要最小限のものだけ書いています。
rootのパスワードのところは、実際のパスワードにしてください。
getValで、キーワードを渡すと(Hello)値Val(world)を返します。




■テスト

 実際に値を返してくるかどうか、テストしてみましょう。
 以下のプログラム
import db.*;

public class Test {

	public static void main(String[] args) {
		DbAccess db = new DbAccess();
		System.out.print(db.getVal("Hello"));
	}

}

(上記< > ¥は、本当は半角)

のように、getValの引数にHelloと渡して実行すると、Worldと、表示されます。

この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« コンピューター言語は、トッ... | トップ | YouTube Data API »
最新の画像もっと見る

土日シリーズ」カテゴリの最新記事