検索
ホームページJava&#&はじめるjdbcを使用してデータベースに接続する手順は何ですか?

jdbc がデータベースに接続する手順: 1. jdbc ドライバーをロードする; 2. データベース接続を作成する; 3. prepareStatement を作成する; 4. SQL ステートメントを実行する; 5. 結果セットを走査する; 6例外を処理し、JDBC オブジェクト リソースを閉じます。

jdbcを使用してデータベースに接続する手順は何ですか?

#この記事の動作環境: Windows10 システム、Java 1.8、thinkpad t480 コンピューター。

JDBC はデータベースに接続し、JDBC でデータベースに接続するためのプログラムを作成します。これには次の手順が含まれます。

まず、JDBC に必要な 4 つのパラメーター (ユーザー、パスワード、URL、driverClass) を準備します。 )

(1) ユーザー名

(2) パスワード

(3) URL は、データベースに接続するときのプロトコル、サブプロトコル、およびデータ ソース識別子を定義します。コロンで区切ります。記述形式: プロトコル: サブプロトコル: データソース識別子

プロトコル: JDBC では常に jdbc で始まります

サブプロトコル: ブリッジ接続のドライバーまたはデータベース管理システムの名前です。
データ ソースの識別: データベース ソースが見つかったアドレスと接続ポートをマークします。
例: (MySql 接続 URL)
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
useUnicode=true: Unicode 文字セットの使用。 CharacterEncoding が gb2312 または GBK に設定されている場合、このパラメータは true に設定する必要があります。 CharacterEncoding=gbk: 文字エンコード方式。

(4) driverClass データベースに接続するために必要なドライバー。

1. JDBC ドライバーをロードします:

データベースに接続する前に、まず JVM (Java 仮想マシン) に接続するデータベースのドライバーをロードする必要があります。 java.lang.Class クラスを通じて、静的メソッド forName(String className) が実装されます。

例:


try{//加载MySql的驱动类    
         Class.forName("com.mysql.jdbc.Driver") ;    
    }catch(ClassNotFoundException e){    
         System.out.println("找不到驱动程序类 ,加载驱动失败!");    
         e.printStackTrace() ;    
    }

読み込みが成功すると、Driver クラスのインスタンスが DriverManager クラスに登録されます。


2. データベース接続の作成

•データベースに接続するには、java.sql.DriverManager から Connection オブジェクトをリクエストして取得する必要があります。データベース接続。

•DriverManager の getConnectin(String url, String username, String passwd) メソッドを使用して、接続する指定されたデータベースへのパス、データベースのユーザー名とパスワードを取得します。


例:

//连接MySql数据库,用户名和密码都是root    
     String url = "jdbc:mysql://localhost:3306/test" ;     
     String username = "root" ;    
     String password = "root" ;    
     try{    
          Connection con = DriverManager.getConnection(url , username , password ) ;    
     }catch(SQLException se){    
          System.out.println("数据库连接失败!");    
          se.printStackTrace() ;    
     }

3. prepareStatement を作成する

•SQL ステートメントを実行するには、java.sql.Statement インスタンスを取得する必要があります。 . Statement インスタンスは以下の 3 種類に分かれています:

1. 静的 SQL ステートメントを実行します。通常、Statement インスタンスを通じて実装されます。

2. 動的 SQL ステートメントを実行します。通常は PreparedStatement インスタンスを通じて実装されます。
3. データベースストアドプロシージャを実行します。通常は CallableStatement インスタンスを通じて実装されます。
•具体的な実装方法:
ステートメント stmt = con.createStatement();
PreparedStatement pstmt = con.prepareStatement(sql);
CallableStatement cstmt = con.prepareCall("{CALLデモSp(? , ?)}") ;

4. SQL ステートメントの実行

•Statement インターフェイスには、SQL ステートメントを実行するための 3 つのメソッド (executeQuery、executeUpdate、およびexecute) が用意されています。

1. ResultSetexecuteQuery( String sqlString ): SQL ステートメントを実行してデータベースにクエリを実行し、結果セット (ResultSet) オブジェクトを返します。

2. intexecuteUpdate(String sqlString): INSERT、UPDATE、または DELETE ステートメントと、CREATE TABLE や DROP TABLE などの SQL DDL ステートメントの実行に使用されます。
3.execute(sqlString): の実行に使用されます。 multiple returns 結果セット、複数の更新カウント、または両方の組み合わせを含むステートメント。
• 特定の実装コード:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...");
int rows = stmt.executeUpdate("INSERT INTO ...");
boolean flag = stmt.execute(String sql);

5. 結果セットを走査します

    两种情况:    
     1、执行更新返回的是本次操作影响到的记录数。    
     2、执行查询返回的结果是一个ResultSet对象。    
    • ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些    
      行中数据的访问。    
    • 使用结果集(ResultSet)对象的访问方法获取数据:    
     while(rs.next()){    
         String name = rs.getString("name") ;    
          String pass = rs.getString(1) ; // 此方法比较高效    
     }    
    (列是从左到右编号的,并且从列1开始)    

6、处理异常,关闭JDBC对象资源     

     •操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声 明顺序相反:    
     1、先关闭requestSet    
     2、再关闭preparedStatement    
     3、最后关闭连接对象connection      

if(rs !=null){   // 关闭记录集    
   try {
      rs.close();
   } catch (SQLException e) {
      e.printStackTrace();
   }
}    
  if(stmt !=null){   // 关闭声明    
   try {
      stmt.close();
   } catch (SQLException e) {
      e.printStackTrace();
   }
}
if(conn !=null){  // 关闭连接对象    
   try {
      conn.close();
   } catch (SQLException e) {
      e.printStackTrace();
   }
}

相关视频教程:java视频教程

以上がjdbcを使用してデータベースに接続する手順は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境