การจัดการ Exception ของฐานข้อมูล
การดำเนินการกับฐานข้อมูลอาจเกิดข้อผิดพลาดได้หลายสาเหตุ ไม่ว่าจะเป็นตารางที่ไม่มีอยู่จริง ชื่อคอลัมน์สะกดผิด หรือการเชื่อมต่อที่ขาดหาย JDBC ใช้ SQLException ในการดักจับข้อผิดพลาดเหล่านี้ โดยให้ข้อมูลอย่างข้อความแจ้งเตือนและ SQL state code
คิวรีในแบบฝึกหัดนี้มีการพิมพ์ผิดโดยตั้งใจ (ใช้ boks แทน books)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การคิวรีฐานข้อมูล PostgreSQL ด้วย Java
คำแนะนำการฝึกหัด
- ดักจับ exception เมื่อคิวรีเกิดข้อผิดพลาด
- แสดงข้อความแจ้งเตือนและ SQLState จาก exception
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
public class Main {
public static void main(String[] args) {
try (Connection conn = DriverManager.getConnection(Credentials.URL, Credentials.USER, Credentials.PASSWORD);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM boks")) {
while (rs.next()) {
System.out.println(rs.getString("title"));
System.out.println(rs.getInt("publication_year"));
}
// Catch database exceptions
} catch (____ e) {
// Print the error message and SQLState
System.out.println("Error: " + e.____());
System.out.println("SQLState: " + e.____());
}
}
}