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) {}
}
}
}