วันนี้ฉันเห็นคนถามคำถามนี้ในกลุ่ม ฉันจึงขอแบ่งปันความรู้ของตัวเองกับคุณ แน่นอนว่าอาจมีบางอย่างผิดปกติ และฉันหวังว่าจะชี้ให้เห็นว่า
***msbase.jar, mssqlserver.jar, msutil.jar (รองรับ sql2000):
แพ็คเกจ Jar ฐานข้อมูลการเชื่อมต่อก่อนหน้า: คุณต้องนำเข้าแพ็คเกจไดรเวอร์ด้วยตนเองเมื่อเชื่อมต่อข้อมูล นั่นคือนำเข้า class.forName ด้วยตนเอง (ชื่อไดรเวอร์)
***ไดรเวอร์ SQL Server JDBC 2.0----sqljdbc.jar และ sqljdbc4.jar
เวอร์ชันใหม่ของแพ็คเกจ Jar ฐานข้อมูลการเชื่อมต่อ JDBC รองรับ sql2005, sql2008
Sqljdbc.jar
เมื่อใช้ไลบรารีคลาส sqljdbc.jar แอปพลิเคชันจะต้องลงทะเบียนไดรเวอร์ตาม class.forName (ชื่อไดรเวอร์) ก่อน ไม่แนะนำให้ใช้ Jdk1.6 หรือสูงกว่า
Sqljdbc4.jar
ใน JDBC API 4.0 เมธอด DriverManager.getConnection ได้รับการปรับปรุงให้โหลดไดรเวอร์ JDBC โดยอัตโนมัติ ดังนั้นเมื่อใช้ไลบรารีคลาส sqljdbc4.jar แอปพลิเคชันไม่จำเป็นต้องเรียกใช้เมธอด Class.forName เพื่อลงทะเบียนหรือโหลดไดรเวอร์ เมื่อเรียกใช้เมธอด getConnection ของคลาส DriverManager ไดรเวอร์ที่เกี่ยวข้องจะถูกพบจากชุดไดรเวอร์ JDBC ที่ลงทะเบียนไว้ ไฟล์ sqljdbc4.jar มีไฟล์ "META-INF/services/java.sql.Driver" ซึ่งมี .sqlserver.jdbc.SQLServerDriver เป็นไดรเวอร์ที่ลงทะเบียน แอปพลิเคชันที่มีอยู่ (ขณะนี้กำลังโหลดไดรเวอร์โดยใช้วิธี Class.forName) จะยังคงทำงานต่อไปโดยไม่มีการแก้ไข
หมายเหตุ: ไลบรารีคลาส sqljdbc4.jar ต้องการ Java Runtime Environment (JRE) เวอร์ชัน 6.0 หรือสูงกว่า