91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL中的JDBC編程該如何分析

發布時間:2022-01-26 09:08:06 來源:億速云 閱讀:144 作者:柒染 欄目:開發技術

這期內容當中小編將會給大家帶來有關MySQL中的JDBC編程該如何分析,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一、數據庫編程的必備條件

編程語言,如Java,C、C++、Python等 數據庫,如Oracle,MySQL,SQL Server等 數據庫驅動包:不同的數據庫,對應不同的編程語言提供了不同的數據庫驅動包,如:MySQL提 供了Java的驅動包mysql-connector-java,需要基于Java操作MySQL即需要該驅動包。同樣的, 要基于Java操作Oracle數據庫則需要Oracle的數據庫驅動包ojdbc。

二、Java的數據庫編程:JDBC

JDBC,即Java Database Connectivity,java數據庫連接。是一種用于執行SQL語句的Java API,它是 Java中的數據庫連接規范。這個API由 java.sql.*,javax.sql.* 包中的一些類和接口組成,它為Java 開發人員操作數據庫提供了一個標準的API,可以為多種關系數據庫提供統一訪問。

三、JDBC工作原理

DBC 為多種關系數據庫提供了統一訪問方式,作為特定廠商數據庫訪問API的一種高級抽象,它主要包 含一些通用的接口類。

JDBC訪問數據庫層次結構:

MySQL中的JDBC編程該如何分析

四、開發環境搭建

首先在電腦服務當中查看自己MySQL的版本,然后進入maven倉庫

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

因為我自己的版本是5.0之后的,所以我選擇5.1.47,大版本要一致

MySQL中的JDBC編程該如何分析

 下載jar即可,記住,jar包不能解壓縮

MySQL中的JDBC編程該如何分析

接下來就在idea自己在根目錄下創建文件夾,然后導入jar包

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

 沒有報錯一直OK下去就沒有啥問題,說明導入成功

五、MySQL中的JDBC編程

1、五步流程

建立數據庫連接

// 加載JDBC驅動程序:反射,這樣調用初始化com.mysql.jdbc.Driver類,即將該類加載到JVM方法
區,并執行該類的靜態方法塊、靜態屬性。
Class.forName("com.mysql.jdbc.Driver");
// 創建數據庫連接
Connection connection =
DriverManager.getConnection("jdbc:mysql://localhost:3306/test?
user=root&password=root&useUnicode=true&characterEncoding=UTF-8");
//MySQL數據連接的URL參數格式如下:
jdbc:mysql://服務器地址:端口/數據庫名?參數名=參數值

創建操作命令(Statement)

Statement statement = connection.createStatement();

執行SQL語句

ResultSet resultSet= statement.executeQuery(
                "select id, sn, name, qq_mail, classes_id from student");

處理結果集

while (resultSet.next()) {
            int id = resultSet.getInt("id");
            String sn = resultSet.getString("sn");
            String name = resultSet.getString("name");
            int classesId = resultSet.getInt("classes_id");
            System.out.println(String.format("Student: id=%d, sn=%s, name=%s, 
classesId=%s", id, sn, name, classesId));
       }

釋放資源(關閉結果集,命令,連接)

//關閉結果集
if (resultSet != null) {
    try {
        resultSet.close();
   } catch (SQLException e) {
        e.printStackTrace();
   }
}
//關閉命令
if (statement != null) {
    try {
        statement.close();
   } catch (SQLException e) {
        e.printStackTrace();
   }
}
//關閉連接命令
if (connection != null) {
    try {
        connection.close();
   } catch (SQLException e) {
        e.printStackTrace();
   }
}

2、添加信息

首先創建一個數據庫并且創建一個表

 create database java122;
 create table text(id int,name varchar(5),class_id int);
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
 
 
public class TextJDBC {
    //DataSource
    //Connection
    //PrepareStatement
 
 
    public static void main(String[] args) throws SQLException{
        //1、創建DataSource對象
         DataSource dataSource = new MysqlDataSource();
        //設置相關內容
        //URL User password
        //向下轉型                     訪問數據庫   協議名        ip地址 要訪問那個地址
        ((MysqlDataSource) dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java122?characterEncoding=utf-8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("180210");
        
        //2、和數據庫連接.進行后續連接
        //connect生命周期較短
        Connection connection = dataSource.getConnection();
        
        //3、拼裝SQL語句
        int id = 1;
        String name = "曹操";
        int class_id = 10;
        //?是一個占位符,可以把一個具體的變量的值替換到?
        String sql = "insert into text values(?,?,?)";
        PreparedStatement statement = connection.prepareStatement(sql);
        //1 2 3相當與?的下標
        statement.setInt(1,id);
        statement.setString(2,name);
        statement.setInt(3,class_id);
        System.out.println("statement:" + statement);
 
        //4、執行SQL語句
        int ret = statement.executeUpdate();
        System.out.println("ret:" + ret);
 
        //5、關閉相關資源
        //后創建的先釋放,順序不能錯
        statement.close();
        connection.close();
 
    }
}

MySQL中的JDBC編程該如何分析

3、查詢信息

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
 
import javax.sql.DataSource;
import javax.xml.transform.Source;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;
 
public class Text1 {
 
 
    public static void main(String[] args) throws SQLException {
 
        //1,創建實列
        DataSource dataSource = new MysqlDataSource();
        ((MysqlDataSource)dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java122?characterEncoding=utf-8&useSSL=false");
        ((MysqlDataSource)dataSource).setUser("root");
        ((MysqlDataSource)dataSource).setPassword("180210");
 
        //2,數據庫連接
        Connection connection = dataSource.getConnection();
 
        //3,構造SQL語句
 
        String sql ="select * from text";
        PreparedStatement statement = connection.prepareStatement(sql);
 
        //4,執行SQL語句
        ResultSet resultSet = statement.executeQuery();
        while (resultSet.next()){
            int id = resultSet.getInt("id");
            String name = resultSet.getString("name");
            int class_id = resultSet.getInt("class_id");
            System.out.println("id: " + id  + "name: " + name  + "class_id: " + class_id);
        }
 
        //5,關閉相關資源
        resultSet.close();
        statement.close();
        connection.close();
    }
}

MySQL中的JDBC編程該如何分析

4、刪除信息

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
 
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
 
public class Textur2 {
 
 
    public static void main(String[] args) throws SQLException {
 
 
        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入要刪除學生的姓名:");
        String name = scanner.next();
        //1,創建實列
        DataSource dataSource = new MysqlDataSource();
        ((MysqlDataSource) dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java122?characterEncoding=utf-8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("180210");
 
        //2,數據庫連接
        Connection connection = dataSource.getConnection();
 
        //3,構造SQL語句
        String sql = "delete from text where name = ?";
        PreparedStatement statement = connection.prepareStatement(sql);
        statement.setString(1,name);
 
        //4,執行SQL
        int ret = statement.executeUpdate();
        if (ret == 1){
            System.out.println("刪除成功");
        }else {
            System.out.println("刪除失敗");
        }
 
        //5,關閉資源
        statement.close();
        connection.close();
 
 
    }
}

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

5、修改信息

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
 
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
 
public class Text4 {
 
 
    public static void main(String[] args) throws SQLException {
 
 
        //修改信息
        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入學生的id:");
        int id = scanner.nextInt();
        System.out.println("請輸入修改學生姓名:");
        String name = scanner.next();
 
        //1,創建實列
        DataSource dataSource = new MysqlDataSource();
        ((MysqlDataSource) dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java122?characterEncoding=utf-8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("180210");
 
        //2,數據庫連接
        Connection connection = dataSource.getConnection();
 
        //3,拼裝SQL
        String sql = "update text set name = ? where id = ?";
        PreparedStatement statement = connection.prepareStatement(sql);
        statement.setString(1,name);
        statement.setInt(2,id);
        //4,執行SQL
        int set = statement.executeUpdate();
        if (set == 1){
            System.out.println("修改成功");
        }else {
            System.out.println("修改失敗");
        }
 
        //5,關閉資源
        statement.close();
        connection.close();
    }
}

MySQL中的JDBC編程該如何分析

MySQL中的JDBC編程該如何分析

上述就是小編為大家分享的MySQL中的JDBC編程該如何分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永清县| 玉山县| 苍溪县| 乐至县| 于田县| 英吉沙县| 巴彦淖尔市| 浦城县| 锡林郭勒盟| 中超| 许昌县| 吉林市| 阳江市| 安国市| 鸡泽县| 信丰县| 中方县| 凌源市| 安远县| 象州县| 康定县| 宣汉县| 武胜县| 汕头市| 湘潭市| 嘉祥县| 江都市| 肇东市| 泗阳县| 华亭县| 溆浦县| 土默特左旗| 东阿县| 汪清县| 雅安市| 新昌县| 昌吉市| 潼南县| 石林| 南城县| 无锡市|