我找到了许多类似问题的答案,但我仍然无法解决我的问题。
我的连接代码是:
import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;
public class TransformData
{
public static void main(String args[])
{
String url = "jdbc:sqlserver://SQLFULL:1433;databaseName=BA_ELTRUN;";
Connection dbcon;
Statement stmt;
ResultSet rs;
Scanner input = new Scanner(System.in);
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}
catch(java.lang.ClassNotFoundException e)
{
System.out.print("ClassNotFoundException: ");
System.out.println(e.getMessage());
}
try
{
dbcon = DriverManager.getConnection(url,"username","password");
stmt = dbcon.createStatement();
}
catch(SQLException e)
{
System.out.print("SQLException: ");
System.out.println(e.getMessage());
}
}
}
当我运行时,我得到以下异常:
ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver SQLException: No suitable driver found for jdbc:sqlserver://Konstantina\SQLFULL; databaseName=BA_ELTRUN
sqljdbc.jar和sqljdbca.jar在此目录中:C:\ Program Files \ Microsoft SQL Server JDBC Driver 2.0 \ Sqljdbc_2.0 \ Enu 我是否必须将它们移到另一个目录中?
答案 0 :(得分:0)
您需要将SQLServerDriver
库添加到项目依赖项
答案 1 :(得分:0)
问题是,当您通过Class.forName调用注册驱动程序时,它应该已经在类路径上。您正在接收的ClassNotFoundException意味着sqljdbc.jar和sqljdbca.jar库不在您的类路径中,因此您需要确保它们包含在内。有关其他详细信息和确切步骤以确保库位于类路径中,请参阅以下内容: https://msdn.microsoft.com/en-us/library/ms378526(v=sql.110).aspx