บทนี้ถือว่าคุณมีความเข้าใจเกี่ยวกับ JDBC อยู่แล้ว ก่อนที่จะเริ่มเรียนรู้การเข้าถึงฐานข้อมูล JSP โปรดตรวจสอบให้แน่ใจว่าสภาพแวดล้อม JDBC ได้รับการกำหนดค่าอย่างถูกต้อง
ขั้นแรก ให้ทำตามขั้นตอนด้านล่างเพื่อสร้างตารางอย่างง่ายและแทรกบันทึกง่ายๆ สองสามรายการ:
สร้างตารางพนักงานในฐานข้อมูลมีขั้นตอนดังนี้:
เปิด CMD และป้อนไดเร็กทอรีการติดตั้งฐานข้อมูล:
C:>C:>cd โปรแกรม FilesMySQLbinC:Program FilesMySQLbin>
C:Program FilesMySQLbin>mysql -u root -pใส่รหัสผ่าน: ********mysql>
ใช้คำสั่งสร้างฐานข้อมูลเพื่อสร้างการทดสอบฐานข้อมูลใหม่:
mysql> สร้างการทดสอบฐานข้อมูล
สร้างตารางพนักงานในฐานข้อมูล TEST:
mysql> ใช้ TEST; mysql> สร้างพนักงานตาราง (id int ไม่ใช่ null, อายุ int ไม่ใช่ null, varchar แรก (255), varchar สุดท้าย (255) ); แบบสอบถามตกลง, 0 แถวได้รับผลกระทบ (0.08 วินาที) mysql>
หลังจากสร้างตารางพนักงานแล้ว ให้แทรกหลายระเบียนลงในตาราง:
mysql> แทรกเข้าไปในค่าของพนักงาน (100, 18, 'Zara', 'Ali'); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.05 วินาที) mysql> แทรกเข้าไปในค่าของพนักงาน (101, 25, 'Mahnaz', 'Fatma'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> INSERT INTO Employee VALUES (102, 30, 'Zaid', 'Khan'); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกค่าพนักงาน (103, 28, 'Sumit', 'Mittal'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql>
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แท็ก JSTL SQL เพื่อรันคำสั่ง SQL SELECT:
-
ภาษาหน้า
-
"จาวา"
ประเภทเนื้อหา
-
"ข้อความ/html; ชุดอักขระ=UTF-8"
การเข้ารหัสหน้า
-
"UTF-8"
-
-
หน้าหนังสือ
นำเข้า
-
"java.io.*,java.util.*,java.sql.*"
-
-
หน้าหนังสือ
นำเข้า
-
"javax.servlet.http.*,javax.servlet.*"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/core"
คำนำหน้า
-
"ค"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/sql"
คำนำหน้า
-
"เอสแอลแอล"
-
<html>
<หัว>
<ชื่อเรื่อง>
การดำเนินการเลือก
</หัวข้อ>
</หัว>
<ร่างกาย>
<sql:setDataSource
var
-
"ภาพรวม"
คนขับ
-
"com.mysql.jdbc.ไดร์เวอร์"
URL
-
"jdbc:mysql://localhost:3306/TEST"
ผู้ใช้
-
"ราก"
รหัสผ่าน
-
"พาส 123"
-
<sql:แบบสอบถาม
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"ผลลัพธ์"
-
SELECT * จากพนักงาน;
</sql:แบบสอบถาม>
<ตาราง
ชายแดน
-
"1"
ความกว้าง
-
"100%"
-
<tr>
<th>
เอ็มพีไอดี
</th>
<th>
ชื่อ
</th>
<th>
นามสกุล
</th>
<th>
อายุ
</th>
</tr>
<c:สำหรับแต่ละรายการ
var
-
"แถว"
รายการ
-
"${result.rows}"
-
<tr>
<td><c:ออก
ค่า
-
"${row.id}"
/></td>
<td><c:ออก
ค่า
-
"${row.first}"
/></td>
<td><c:ออก
ค่า
-
"${row.last}"
/></td>
<td><c:ออก
ค่า
-
"${row.age}"
/></td>
</tr>
</c:สำหรับแต่ละ>
</ตาราง>
</ร่างกาย>
</html>
เข้าถึงตัวอย่าง JSP นี้และผลลัพธ์จะเป็นดังนี้:
ตัวอย่างนี้แสดงวิธีการใช้แท็ก JSTL SQL เพื่อรันคำสั่ง SQL INSERT:
-
ภาษาหน้า
-
"จาวา"
ประเภทเนื้อหา
-
"ข้อความ/html; ชุดอักขระ=UTF-8"
การเข้ารหัสหน้า
-
"UTF-8"
-
-
หน้าหนังสือ
นำเข้า
-
"java.io.*,java.util.*,java.sql.*"
-
-
หน้าหนังสือ
นำเข้า
-
"javax.servlet.http.*,javax.servlet.*"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/core"
คำนำหน้า
-
"ค"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/sql"
คำนำหน้า
-
"เอสแอลแอล"
-
<html>
<หัว>
<ชื่อเรื่อง>
การดำเนินการแทรก
</ชื่อเรื่อง>
</หัว>
<ร่างกาย>
<sql:setDataSource
var
-
"ภาพรวม"
คนขับ
-
"com.mysql.jdbc.ไดร์เวอร์"
URL
-
"jdbc:mysql://localhost/TEST"
ผู้ใช้
-
"ราก"
รหัสผ่าน
-
"พาส 123"
-
<sql:อัพเดต
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"ผลลัพธ์"
-
แทรกลงในค่านิยมของพนักงาน (104, 2, 'Nuha', 'Ali');
</sql:อัพเดต>
<sql:แบบสอบถาม
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"ผลลัพธ์"
-
SELECT * จากพนักงาน;
</sql:แบบสอบถาม>
<ตาราง
ชายแดน
-
"1"
ความกว้าง
-
"100%"
-
<tr>
<th>
เอ็มพีไอดี
</th>
<th>
ชื่อ
</th>
<th>
นามสกุล
</th>
<th>
อายุ
</th>
</tr>
<c:สำหรับแต่ละรายการ
var
-
"แถว"
รายการ
-
"${result.rows}"
-
<tr>
<td><c:ออก
ค่า
-
"${row.id}"
/></td>
<td><c:ออก
ค่า
-
"${row.first}"
/></td>
<td><c:ออก
ค่า
-
"${row.last}"
/></td>
<td><c:ออก
ค่า
-
"${row.age}"
/></td>
</tr>
</c:สำหรับแต่ละ>
</ตาราง>
</ร่างกาย>
</html>
เข้าถึงตัวอย่าง JSP นี้และผลลัพธ์จะเป็นดังนี้:
ตัวอย่างนี้แสดงวิธีการใช้แท็ก JSTL SQL เพื่อรันคำสั่ง SQL DELETE:
-
ภาษาหน้า
-
"จาวา"
ประเภทเนื้อหา
-
"ข้อความ/html; ชุดอักขระ=UTF-8"
การเข้ารหัสหน้า
-
"UTF-8"
-
-
หน้าหนังสือ
นำเข้า
-
"java.io.*,java.util.*,java.sql.*"
-
-
หน้าหนังสือ
นำเข้า
-
"javax.servlet.http.*,javax.servlet.*"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/core"
คำนำหน้า
-
"ค"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/sql"
คำนำหน้า
-
"เอสแอลแอล"
-
<html>
<หัว>
<ชื่อเรื่อง>
ลบการดำเนินการ
</หัวข้อ>
</หัว>
<ร่างกาย>
<sql:setDataSource
var
-
"ภาพรวม"
คนขับ
-
"com.mysql.jdbc.ไดร์เวอร์"
URL
-
"jdbc:mysql://localhost/TEST"
ผู้ใช้
-
"ราก"
รหัสผ่าน
-
"พาส 123"
-
<c:ตั้งค่า
var
-
"เอมไอดี"
ค่า
-
"103"
-
<sql:อัพเดต
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"นับ"
-
ลบออกจากพนักงาน โดยที่ Id = ?
<sql:พารามิเตอร์
ค่า
-
"${empId}"
-
</sql:อัพเดต>
<sql:แบบสอบถาม
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"ผลลัพธ์"
-
SELECT * จากพนักงาน;
</sql:แบบสอบถาม>
<ตาราง
ชายแดน
-
"1"
ความกว้าง
-
"100%"
-
<tr>
<th>
เอ็มพีไอดี
</th>
<th>
ชื่อ
</th>
<th>
นามสกุล
</th>
<th>
อายุ
</th>
</tr>
<c:สำหรับแต่ละรายการ
var
-
"แถว"
รายการ
-
"${result.rows}"
-
<tr>
<td><c:ออก
ค่า
-
"${row.id}"
/></td>
<td><c:ออก
ค่า
-
"${row.first}"
/></td>
<td><c:ออก
ค่า
-
"${row.last}"
/></td>
<td><c:ออก
ค่า
-
"${row.age}"
/></td>
</tr>
</c:สำหรับแต่ละ>
</ตาราง>
</ร่างกาย>
</html>
เข้าถึงตัวอย่าง JSP นี้และผลลัพธ์จะเป็นดังนี้:
ตัวอย่างนี้แสดงวิธีการใช้แท็ก JSTL SQL เพื่อรันคำสั่ง SQL UPDATE:
-
ภาษาหน้า
-
"จาวา"
ประเภทเนื้อหา
-
"ข้อความ/html; ชุดอักขระ=UTF-8"
การเข้ารหัสหน้า
-
"UTF-8"
-
-
หน้าหนังสือ
นำเข้า
-
"java.io.*,java.util.*,java.sql.*"
-
-
หน้าหนังสือ
นำเข้า
-
"javax.servlet.http.*,javax.servlet.*"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/core"
คำนำหน้า
-
"ค"
-
-
แท็กลิบ uri
-
"http://java.sun.com/jsp/jstl/sql"
คำนำหน้า
-
"เอสแอลแอล"
-
<html>
<หัว>
<ชื่อเรื่อง>
การดำเนินการอัปเดต
</ชื่อเรื่อง>
</หัว>
<ร่างกาย>
<sql:setDataSource
var
-
"ภาพรวม"
คนขับ
-
"com.mysql.jdbc.ไดร์เวอร์"
URL
-
"jdbc:mysql://localhost/TEST"
ผู้ใช้
-
"ราก"
รหัสผ่าน
-
"พาส 123"
-
<c:ตั้งค่า
var
-
"เอมไอดี"
ค่า
-
"102"
-
<sql:อัพเดต
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"นับ"
-
อัปเดตพนักงาน SET สุดท้าย = 'อาลี' WHERE Id = ?
<sql:พารามิเตอร์
ค่า
-
"${empId}"
-
</sql:อัพเดต>
<sql:แบบสอบถาม
แหล่งข้อมูล
-
"${สแน็ปช็อต}"
var
-
"ผลลัพธ์"
-
SELECT * จากพนักงาน;
</sql:แบบสอบถาม>
<ตาราง
ชายแดน
-
"1"
ความกว้าง
-
"100%"
-
<tr>
<th>
เอ็มพีไอดี
</th>
<th>
ชื่อ
</th>
<th>
นามสกุล
</th>
<th>
อายุ
</th>
</tr>
<c:สำหรับแต่ละรายการ
var
-
"แถว"
รายการ
-
"${result.rows}"
-
<tr>
<td><c:ออก
ค่า
-
"${row.id}"
/></td>
<td><c:ออก
ค่า
-
"${row.first}"
/></td>
<td><c:ออก
ค่า
-
"${row.last}"
/></td>
<td><c:ออก
ค่า
-
"${row.age}"
/></td>
</tr>
</c:สำหรับแต่ละ>
</ตาราง>
</ร่างกาย>
</html>
เข้าถึงตัวอย่าง JSP นี้และผลลัพธ์จะเป็นดังนี้: