MySQL 初始化 SQL

-- 创建数据库和表
CREATE DATABASE IF NOT EXISTS school_db;
USE school_db;

CREATE TABLE IF NOT EXISTS students (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    age INT,
    classroom VARCHAR(50)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 插入数据
INSERT INTO students (name, age, classroom) 
VALUES 
    ('李明', 18, '高一1班'), 
    ('王芳', 17, '高一2班'), 
    ('张伟', 19, '高一3班');

Java JDBC 查询

package com.example;

import java.sql.*;

public class StudentQuery {
    private static final String URL = "jdbc:mysql://localhost:3306/school_db?allowPublicKeyRetrieval=true&useSSL=false";
    private static final String USERNAME = "root";
    private static final String PASSWORD = "password";

    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
            stmt = conn.createStatement();
            rs = stmt.executeQuery("SELECT * FROM students");
            
            System.out.println("ID\t姓名\t年龄\t班级");
            while (rs.next()) {
                System.out.println(rs.getInt("id") + "\t" + rs.getString("name") + "\t" + 
                                   rs.getInt("age") + "\t" + rs.getString("classroom"));
            }
        } catch (Exception e) {
            System.err.println("错误: " + e.getMessage());
        } finally {
            try { if (rs != null) rs.close(); } catch (SQLException e) {}
            try { if (stmt != null) stmt.close(); } catch (SQLException e) {}
            try { if (conn != null) conn.close(); } catch (SQLException e) {}
        }
    }
}

写文章用