การเขียนโปรแกรม Java ที่เข้าถึงฐานข้อมูลยังจำเป็นต้องมีคลาสและอินเทอร์เฟซที่สำคัญหลายอย่าง
คลาส DriverManager
คลาส DriverManager จัดการการโหลดไดรเวอร์และสร้างการเชื่อมต่อฐานข้อมูลใหม่ DriverManager เป็นคลาสในแพ็คเกจ java.sql ที่ใช้จัดการไดรเวอร์ฐานข้อมูล โดยปกติแล้ว แอปพลิเคชันจะใช้เฉพาะเมธอดคงที่ getConnection() ของคลาส DriverManager เพื่อสร้างการเชื่อมต่อกับฐานข้อมูลและส่งกลับอ็อบเจ็กต์การเชื่อมต่อ:
การเชื่อมต่อแบบคงที่ getConnection (URL สตริง, ชื่อผู้ใช้สตริง, รหัสผ่านสตริง)
ระบุชื่อผู้ใช้ URL และรหัสผ่านของข้อมูลเพื่อสร้างวัตถุการเชื่อมต่อฐานข้อมูล รูปแบบไวยากรณ์ของ url คือ:
jdbc:<กลไกการเชื่อมต่อฐานข้อมูล>:<ชื่อฐานข้อมูล ODBC>
คลาสการเชื่อมต่อ
คลาสการเชื่อมต่อเป็นคลาสในแพ็คเกจ java.sql ที่จัดการการเชื่อมต่อกับฐานข้อมูลเฉพาะ วัตถุการเชื่อมต่อเป็นวัตถุที่ใช้เพื่อแสดงการเชื่อมต่อฐานข้อมูล โปรแกรม Java ทำงานบนวัตถุประเภทนี้ วิธีการหลักของคลาสการเชื่อมต่อคือ:
ชั้นเรียนคำสั่ง
คลาส Statement เป็นคลาสในแพ็คเกจ java.sql ที่ใช้ในการประมวลผลคำสั่ง SQL ในการเชื่อมต่อที่ระบุ จุดประสงค์ของการเขียนโปรแกรมฐานข้อมูลคือการฝังคำสั่ง SQL ไว้ในโปรแกรม โปรแกรมจำเป็นต้องประกาศและสร้างอ็อบเจ็กต์การเชื่อมต่อเพื่อเชื่อมต่อกับฐานข้อมูล และปล่อยให้อ็อบเจ็กต์เชื่อมต่อกับฐานข้อมูล เรียกเมธอดคงที่ getConnection() ของคลาส DriverManager เพื่อรับอ็อบเจ็กต์การเชื่อมต่อเพื่อเชื่อมต่อโปรแกรมกับฐานข้อมูล จากนั้น ใช้คลาส Statement เพื่อประกาศออบเจ็กต์คำสั่ง SQL และเรียกใช้เมธอด createStatement() ของอ็อบเจ็กต์ Connection เพื่อสร้างออบเจ็กต์คำสั่ง SQL ตัวอย่างเช่น รหัสต่อไปนี้สร้างวัตถุคำสั่ง sql:
คำสั่ง sql = null; try{ sql = con.createStatement(); }catch(SQLException e){}
คลาส ResultSet
หลังจากที่คุณมีออบเจ็กต์คำสั่ง SQL แล้ว ให้เรียกใช้เมธอดExecuteQuery()ของออบเจ็กต์คำสั่งเพื่อดำเนินการคิวรี SQL และจัดเก็บผลลัพธ์ของคิวรีในออบเจ็กต์ที่ประกาศด้วยคลาส ResultSet ตัวอย่างเช่น รหัสต่อไปนี้จะอ่านตารางคะแนนของนักเรียนและจัดเก็บ มันอยู่ในวัตถุ rs:
ResultSet rs = sql.executeQuery("SELECT * FROM ksInfo");
จริงๆ แล้ววัตถุ ResultSet คือตารางที่มีข้อมูลผลลัพธ์การสืบค้น โดยเป็นชุดข้อมูล tubular ที่ประกอบด้วยแถวข้อมูลในรูปแบบรวม และหนึ่งแถวสอดคล้องกับบันทึกการสืบค้นหนึ่งรายการ มีเคอร์เซอร์โดยนัยในออบเจ็กต์ ResultSet เท่านั้นที่สามารถรับแถวข้อมูลปัจจุบันได้โดยใช้วิธีถัดไปเพื่อรับแถวข้อมูลถัดไป ใช้ชื่อฟิลด์ (คอลัมน์) หรือดัชนีตำแหน่ง (เริ่มจาก 1) ของแถวข้อมูลเพื่อเรียกเมธอด getXXX() เพื่อรับฟิลด์ฟิลด์ของเรกคอร์ด ต่อไปนี้เป็นวิธีการบางอย่างของวัตถุ ResultSet:
columnIndex ในวิธีการข้างต้นคือดัชนีตำแหน่งที่ใช้ในการระบุฟิลด์ และ columnName คือชื่อฟิลด์
ผู้ใช้จำเป็นต้องเรียกดูชุดผลลัพธ์แบบสอบถาม หรือเลื่อนไปข้างหน้าและข้างหลัง หรือแสดงบันทึกที่ระบุของชุดผลลัพธ์ ซึ่งเรียกว่าชุดผลลัพธ์แบบเลื่อนได้ หากต้องการรับชุดผลลัพธ์แบบเลื่อนได้ โปรแกรมจะต้องเพิ่มพารามิเตอร์สองตัวของชุดผลลัพธ์ที่ระบุเท่านั้นเมื่อรับออบเจ็กต์คำสั่ง SQL ตัวอย่างเช่น รหัสต่อไปนี้:
คำสั่ง stmt = con.createStatement (ประเภท, การทำงานพร้อมกัน); ResultSet rs = stmt.executeQuery (คำสั่ง SQL)
แบบสอบถาม SQL ของวัตถุคำสั่ง stmt สามารถรับชุดผลลัพธ์ของประเภทที่สอดคล้องกัน
ประเภทพารามิเตอร์ชนิด int กำหนดวิธีการเลื่อนของชุดเลื่อน:
การทำงานพร้อมกันของพารามิเตอร์ประเภท int จะกำหนดว่าฐานข้อมูลได้รับการอัพเดตพร้อมกันกับชุดที่เลื่อนได้หรือไม่:
ตัวอย่างเช่น รหัสต่อไปนี้ใช้การเชื่อมต่อวัตถุการเชื่อมต่อเพื่อสร้างวัตถุคำสั่ง stmt ระบุว่าชุดผลลัพธ์สามารถเลื่อนได้ และอ่านฐานข้อมูลในโหมดอ่านอย่างเดียว:
stmt = เชื่อมต่อ. createStatement (ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
วิธีการอื่นๆ ที่ใช้กันทั่วไปในชุดแบบเลื่อนได้มีดังนี้: