我正在尝试建立从Java到sql服务器的连接。我正在使用jdk 8 1.8和sql server 2014,这是我的代码:
package test.prova;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Provaconn {
public static void main(String[] args) throws Exception {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection m_Connection = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://srvdatiorim14.saga.locale;DatabaseName=mydbname", "myuser", "mypw");
Statement m_Statement = m_Connection.createStatement();
String query = "SELECT * FROM trasco_proprieta";
ResultSet m_ResultSet = m_Statement.executeQuery(query);
while (m_ResultSet.next()) {
System.out.println(m_ResultSet.getString(1) + ", " + m_ResultSet.getString(2) + ", "
+ m_ResultSet.getString(3));
}
}
但出现以下错误:
Exception in thread "main" java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at test.prova.Provaconn.main(Provaconn.java:10)
我已经在各种主题中寻找解决方案,我尝试了各种调整,但是仍然出现此错误。 我还从maven依赖项和外部库中导入了jdbc驱动程序jar(如您所见,我尝试了不同版本):
关于如何解决此问题的任何建议? Ť 谢谢, Serph
编辑-已解决
将Class.forName更改为答案中的一个建议后,我还修改了错误的网址。更改自
jdbc:microsoft:sqlserver:// ...
到
jdbc:sqlserver //...
答案 0 :(得分:-1)
如果您使用以下jar文件:http://www.java2s.com/Code/Jar/s/Downloadsqljdbc420jar.htm 您必须更改:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
到
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");