English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
本章では、JDBCアプリケーションを使用してテーブルからレコードを選択する方法についての例を提供しています。LIKE子句を使用して追加の条件を追加します。以下の例を実行する前に、以下の条件を確認してください:
以下の例を実行するには、以下をユーザー名そしてパスワード実際のユーザー名とパスワードに置き換えてください。
あなたのMySQLまたは使用しているデータベースが起動し、実行中であることを確認してください。
JDBCアプリケーションを使用して新しいデータベースを作成するには、以下の手順を実行する必要があります-
パッケージのインポート:データベースプログラミングに必要なJDBCクラスを含むパッケージを含める必要があります。通常、以下を使用します import java.sql.* 十分です。
JDBCドライバの登録: データベースとの通信チャンネルを開くために、ドライバを初期化する必要があります。
接続を確立:使用する必要があります DriverManager.getConnection() メソッドを使用してConnectionオブジェクトを作成し、データベースサーバとの物理的な接続を表します。
クエリを実行:SQLステートメントのオブジェクトを使用してSQL文を構築および提出し、指定された条件を満たすテーブルからレコードを取得するために、以下の方法を使用します。このクエリはLIKE子句を使用してレコードを選択し、すべての名前が「za」で始まる学生を選択します。
環境のクリーンアップ: すべてのデータベースリソースを明示的に閉じる必要があります。JVMのゴミ収集に依存するのではなく。
以下の例をJDBCExample.javaにコピーして貼り付け、以下のようにコンパイルおよび実行してください-
//ステップ1.必要なソフトウェアパッケージをインポート import java.sql.*; public class JDBCExample { // JDBCドライバ名とデータベースURL static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost/STUDENTS"; // データベースの証明書 static final String USER = "username"; static final String PASS = "password"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ //ステップ2:JDBCドライバの登録 Class.forName("com.mysql.jdbc.Driver"); //ステップ3:接続を確立 System.out.println("選択されたデータベースに接続しています..."); conn = DriverManager.getConnection(DB_URL, USER, PASS); System.out.println("データベースに接続成功..."); //ステップ4:クエリを実行 System.out.println("ステートメントを作成..."); stmt = conn.createStatement(); // 無条件で記録を抽出。 System.out.println("条件なしでレコードを取得..."); String sql = "SELECT id, first, last, age FROM Registration"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ //列名で検索 int id = rs.getInt("id"); int age = rs.getInt("age"); String first = rs.getString("first"); String last = rs.getString("last"); //表示値 System.out.print("ID: " + id); System.out.print(", Age: " + age); System.out.print(", First: " + first); System.out.println(", Last: " + last); } // IDが等しいかまたは大きい選択101の記録 System.out.println("条件付きでレコードを取得..."); sql = "SELECT id, first, last, age FROM Registration" + " WHERE first LIKE '%za%' " rs = stmt.executeQuery(sql); while(rs.next()){ //列名で検索 int id = rs.getInt("id"); int age = rs.getInt("age"); String first = rs.getString("first"); String last = rs.getString("last"); //表示値 System.out.print("ID: " + id); System.out.print(", Age: " + age); System.out.print(", First: " + first); System.out.println(", Last: " + last); } rs.close(); }catch(SQLException se){ //JDBCエラーを処理 se.printStackTrace(); catch(Exception e){ //Class.forNameのエラーを処理 e.printStackTrace(); }finally{ //リソースを閉じるために使用 try{ if(stmt!=null) conn.close(); }catch(SQLException se){ }// 何もしない try{ if(conn!=null) conn.close(); }catch(SQLException se){ se.printStackTrace(); } } System.out.println("さようなら!"); }//mainを終了 }//JDBCExampleを終了
今、上記の例を以下のようにコンパイルしましょう:
C:\>javac JDBCExample.java C:\>
実行時JDBCExample、以下のような結果が得られます-
C:\>java JDBCExample 選択されたデータベースに接続しています... データベースに接続成功しました... ステートメントの作成... 条件なしでレコードを取得しています... ID: 100, Age: 30, First: Zara, Last: Ali ID: 102, Age: 30, First: Zaid, Last: Khan ID: 103, Age: 28, First: Sumit, Last: Mittal 条件付きでレコードを取得しています... ID: 100, Age: 30, First: Zara, Last: Ali ID: 102, Age: 30, First: Zaid, Last: Khan さようなら! C:\>