トピック:
1. データベース (学生番号 + 名前の略語、例: 2020001zs) を作成し、データベース内にテーブル (5 つ以上のフィールド) を作成します。
2. JDBC (PreparedStatement インターフェイスを使用) を使用してデータベースを操作し、テーブル内のデータの追加、削除、変更、クエリを実行します。
目次
4.データ
1. データベース
1. データベースを作成する
2. テーブルを作成する
タイトルは次のとおりです。データベースにテーブル (5 つ以上のフィールド) を作成します。5 つ取得しましょう。
drop table if exists student_course;
create table student_course
(
course_id varchar(10) comment '课程号',
course_name varchar(15) comment '课程名',
course_number double unsigned comment '学分数',
student_time int unsigned comment '学时数',
teacher varchar(10) comment '任课教师'
)
comment '课程表';
select *
from student_course;
3. データを追加する
INSERT INTO student_course
values ('K001', '计算机图形学', 2.5, 40, '胡晶晶'),
('K002', '计算机应用基础', 3, 48, '任泉'),
('K006', '数据结构', 4, 64, '马跃先'),
('M001', '政治经济学', 4, 64, '孔繁新'),
('S001', '高等数学', 3, 48, '赵晓尘');
select *
from student_course;
2.JDBC
1. 環境を準備する
クリックしてmysql jar パッケージのダウンロード公式 Web サイトに入ります
MySQL がバージョン 5 の場合:
私の mysql はバージョン 8 なので、これをダウンロードします。
解凍:
2. データのクエリ
バージョン 5.x のドライバー ファイル jar パッケージは以下に対応します:
Class.forName("com.mysql.jdbc.Driver");
データベース ドライバーをロードするステートメント
また、データベース ドライバー ファイルの 8.0x バージョンを使用しているため、データベース ドライバーをロードするステートメントを次のように変更する必要があります
。
import java.sql.*;
public class Main {
public static void main(String[] args) throws Exception {
PreparedStatement ps = null;
Connection con = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/20202122084tsj?serverTimezone=GMT%2B8", "root", "root");
String sql = "select * from student_course;";
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
System.out.println("编号:" + rs.getString(1) + "\t" + "课程名:" + rs.getString(2) + "\t" + "学分数:" + rs.getString(3) + "\t" + "学时数:" + rs.getString(4) + "\t" + "任课教师:" + rs.getString(5));
}
rs.close();
ps.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
3. データを追加する
import java.sql.*;
public class InsertData {
public static void main(String[] args) {
Connection con = null;
PreparedStatement ps = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/20202122084tsj?serverTimezone=GMT%2B8", "root", "root");
String sql = "INSERT INTO student_course values(?,?,?,?,?);";
ps = con.prepareStatement(sql);
ps.setString(1, "K111");
ps.setString(2, "javaWeb");
ps.setDouble(3, 3);
ps.setInt(4, 48);
ps.setString(5, "丁老师");
ps.execute();
ps.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
4. データの削除
import java.sql.*;
public class DeleteData {
public static void main(String[] args){
Connection con = null;
PreparedStatement ps = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/20202122084tsj?serverTimezone=GMT%2B8", "root", "root");
String sql = "delete from student_course where course_id = ?;";
ps = con.prepareStatement(sql);
ps.setString(1,"K111");
ps.execute();
ps.close();
con.close();
}catch (Exception e){
e.printStackTrace();
}
}
}
以前に追加されたデータは削除されます
5. データを変更する
import java.sql.*;
public class UpdateData {
public static void main(String[] ags){
Connection con = null;
PreparedStatement ps = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/20202122084tsj?serverTimezone=GMT%2B8", "root", "root");
String sql = "update student_course set course_name = ?,teacher = ? where course_id = ?;";
ps = con.prepareStatement(sql);
ps.setString(1,"SpringCloud");
ps.setString(2,"王老师");
ps.setString(3,"S001");
ps.execute();
ps.close();
con.close();
}catch (Exception e){
e.printStackTrace();
}
}
}
コードの冗長性は深刻で、将来的にはツールクラスの簡素化が行われる予定です