我试图将我的JAVA代码连接到本地的SQL Server。这就是我想要的:
public static void main(String[] args) throws ClassNotFoundException, SQLException, InvalidFormatException, IOException {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection("jdbc:sqlserver://localhost" + "databaseName=talisman" + "user=karim" + "password=123");
//rest of the code
}}
我遇到了这个例外:
Dec 18, 2012 11:29:40 AM com.microsoft.sqlserver.jdbc.SQLServerConnection <init>
SEVERE: Java Runtime Environment (JRE) version 1.6 is not supported by this driver. Use the sqljdbc4.jar class library, which provides support for JDBC 4.0.
Exception in thread "main" java.lang.UnsupportedOperationException: Java Runtime Environment (JRE) version 1.6 is not supported by this driver. Use the sqljdbc4.jar class library, which provides support for JDBC 4.0.
at com.microsoft.sqlserver.jdbc.SQLServerConnection.<init>(SQLServerConnection.java:304)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1011)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at cct.karim.karim.main(karim.java:62)
我很困惑...... 我将非常感谢您的帮助,但请具体说明您的答案
更新
我正在使用eclipse,我下载了jbdc4。你能告诉我如何把它包含在日食中吗?
答案 0 :(得分:2)
尝试使用jtds驱动程序,这是MS SQL的替代驱动程序。有关如何正确使用驱动程序的更多信息,请阅读Getting started。
答案 1 :(得分:2)
您可以尝试以下面提到的方式在本地将JAVA代码连接到SQL Server。
你需要拥有 Microsoft SQL Server JDBC驱动程序 SQL JDBC身份验证文件 验证后下载验证文件后,将此文件复制到window的system32文件夹中。现在设置SQL Server JDBC驱动程序的类路径(jar文件)。现在假设你有一个数据库mssumit,用户名和密码是sumit。您还可以使用widows身份验证连接到SQL Server,如果要使用Windows身份验证连接,可以使用以下代码。
Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=mssumit;integratedSecurity=true");
Connection conn =DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=mssumit;user=sumit;password=sumit;");
在某些情况下,您可能无法使用用户名连接,请检查您可以使用SQL Server身份验证连接的数据库连接属性。使用以下代码
实例化SQL Server驱动程序类Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=mssumit;user=sumit;password=sumit;");
有关详细说明,程序和源代码,您可以查看此链接http://compilr.org/java/jdbc-connection-with-ms-sql-server-in-java/
答案 2 :(得分:1)
答案 3 :(得分:1)
您的运行时环境使用jre 1.6,而您使用的sql jar与java不兼容。请改为使用sqljdbc4.jar。
答案 4 :(得分:0)
希望这个主题可以帮助你 - How do I connect to a SQL Server 2008 database using JDBC?。
基本上,有两种方法可以使用JDBC - 使用Windows身份验证和SQL身份验证。 SQL身份验证可能是最简单的。你可以做的是:
String userName = "username";
String password = "password";
String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url, userName, password);
将sqljdbc4.jar添加到构建路径后。
对于Window身份验证,您可以执行以下操作:
String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB;integratedSecurity=true";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url);
然后将sqljdbc_auth.dll的路径添加为VM参数(在构建路径中仍需要sqljdbc4.jar)。
请查看here,了解如何在需要更多详细信息时使用eclipse使用jTDS和JDBC从Java连接到SQL Server的简短分步指南。希望它有所帮助!