Java 增删改查的 SQL 语句

简介

在 Java 开发中,经常需要与数据库进行交互,其中最常见的操作是增删改查(CRUD)。增删改查是对数据库中的数据进行插入、删除、更新和查询的操作。本文将介绍使用 Java 编写增删改查的 SQL 语句,并提供相应的代码示例。

增(Create)

在数据库中插入新的数据可以使用 SQL 的 INSERT 语句。下面是一个示例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class InsertExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String username = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, username, password)) {
            String sql = "INSERT INTO employees (id, name, age) VALUES (?, ?, ?)";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setInt(1, 1);
            statement.setString(2, "John");
            statement.setInt(3, 25);
            statement.executeUpdate();
            System.out.println("Data inserted successfully.");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

上述代码通过 JDBC 连接到数据库,然后使用 PreparedStatement 对象执行 INSERT 语句。INSERT 语句中的问号表示占位符,可以通过 setXXX() 方法设置具体的值。执行 executeUpdate() 方法后,数据就会被插入到数据库中。

删(Delete)

从数据库中删除数据可以使用 SQL 的 DELETE 语句。下面是一个示例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class DeleteExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String username = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, username, password)) {
            String sql = "DELETE FROM employees WHERE id=?";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setInt(1, 1);
            statement.executeUpdate();
            System.out.println("Data deleted successfully.");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

上述代码同样使用 JDBC 连接到数据库,然后使用 PreparedStatement 对象执行 DELETE 语句。DELETE 语句中的问号表示占位符,可以通过 setXXX() 方法设置具体的值。执行 executeUpdate() 方法后,数据就会被从数据库中删除。

改(Update)

要更新数据库中的数据,可以使用 SQL 的 UPDATE 语句。下面是一个示例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class UpdateExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String username = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, username, password)) {
            String sql = "UPDATE employees SET name=?, age=? WHERE id=?";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setString(1, "John Doe");
            statement.setInt(2, 30);
            statement.setInt(3, 1);
            statement.executeUpdate();
            System.out.println("Data updated successfully.");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

上述代码同样使用 JDBC 连接到数据库,然后使用 PreparedStatement 对象执行 UPDATE 语句。UPDATE 语句中的问号表示占位符,可以通过 setXXX() 方法设置具体的值。执行 executeUpdate() 方法后,数据就会被更新。

查(Retrieve)

从数据库中查询数据可以使用 SQL 的 SELECT 语句。下面是一个示例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class SelectExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String username = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, username, password)) {
            String sql = "SELECT * FROM employees";
            PreparedStatement statement = conn.prepareStatement(sql);
            ResultSet resultSet = statement.executeQuery();

            while (resultSet.next()) {
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");

                System.out.println("ID: " + id + ", Name: " + name + ", Age: " + age);
            }
        } catch (SQLException e