Presentation is loading. Please wait.

Presentation is loading. Please wait.

情報理工学部 情報システム工学科 ラシキアゼミ 3年 H 井奈波 和也

Similar presentations


Presentation on theme: "情報理工学部 情報システム工学科 ラシキアゼミ 3年 H 井奈波 和也"— Presentation transcript:

1 情報理工学部 情報システム工学科 ラシキアゼミ 3年 H106014 井奈波 和也
MySQL + JAVA 情報理工学部 情報システム工学科 ラシキアゼミ 3年  H106014 井奈波 和也

2 JDBCとは JDBCは、Javaとデータベースの接続のためのAPI。
 JDBCは正式名称であって略称ではないが、Java Database Connectivityを略して名付けられたと考えられている。  ODBCをベースにサン・マイクロシステムズおよびDataDirect が共同で開発していると言われている。 SQLを使用して、データベース管理システム (DBMS) などと 接続する機能を標準化(抽象化)している。 ちなみに今回はここにjarファイルが置いてあるよ C:\Program Files\MySQL\mysql-connector-java-5.1.7\mysql- connector-java bin.jar

3 JavaによるMySQL接続方法 プリント参照

4 PreparedStatementとStatement
JDBCでは2つのクエリの実行方法がある Select文のwhere句に違いが 例) Statement Select * from Atable where ID = 1; 例) PreparedStatement Select * from Atable where ID = ?; ? = 1; ?はバインド変数という PreparedStatementで書いたほうが検索が早いと言われていま す

5 早い理由 データベースでは、SQL文(ここではSELECT, INSERT, DELETE, UPDATEに限定)を実行する際に、いくつかのステップを踏ん で処理を行います。  (1) SQL文の構文チェック、権限チェック  (2) 検索方法の特定、コンパイル  (3) データの検索、変更を実施 ここで、多くのデータベースでは効率化の為に(2)の結果と SQL文をキャッシュに保存します。以降、キャッシュに存在 するSQL文は検索方法が特定されているものとし、(2)を実施 することなく(3)の処理に移れる為、効率的に処理をすること が可能になります。 ただし、実行するSQL文がキャッシュに保存されているSQL 文にヒットする為には、文字列全体が「完全に一致する」必 要があります。

6 PreparedStatement 変更点 変数宣言 PreparedSatement ps = null; SELECT文の変更
String sql = “select * from dt_sample1 where ID = ?”; ここから少し違うよ ps = con.prepareStatement(sql); 第一引数は何番目の?か 第二引数は与える値(int, String) ps.setString(1,“1"); あとはResultSetをもらう ResultSet rs = ps.executeQuery();

7 Insert Update Delete Statement.executeQuery(sql) ↓
      ↓ Statement. executeUpdate(sql); PreparedStatement.executeQuery(); PreparedStatement.executeUpdate();

8 ResultSet .next() カーソルを現在の位置から 1 行下に移動します。ResultSet のカーソルは、初 期状態では最初の行の前に位置付けられています。メソッド next の最初の 呼び出しによって、最初の行が現在の行になります。2 番目の呼び出しに よって 2 行目が現在の行になり、以降同様に続きます。 戻り値: 新しい現在の行が有効な場合は true、それ以上行がない場合は false .getString() この ResultSet オブジェクトの現在行にある指定された列の値を、Java プログ ラミング言語の String として取得します。 .getInt() この ResultSet オブジェクトの現在行にある指定された列の値を、Java プログ ラミング言語の int として取得します。

9 課題1 新しいテーブルを作成 カラムはnameとage nameはvarchar(10)のprimary key,ageはint(3)
初期値として適当に3人分くらい入れる それをjavaのプログラムで表示させる

10 課題2 課題1の応用 実行結果を見せるのでそれに沿ってプログラムを作成する


Download ppt "情報理工学部 情報システム工学科 ラシキアゼミ 3年 H 井奈波 和也"

Similar presentations


Ads by Google