java - MSSQL Server 2005-JDBC连接

原文 标签 java sql-server eclipse jdbc

我正在尝试使用JDBC在JAVA中连接Microsoft SQL Server 2005,但出现以下异常。我的项目未在Eclipse中运行,它说“找不到请求的资源”(完成所有服务器配置以及从服务器中添加和删除项目),当我从控制台运行它时,它显示我“未找到类异常”通过使用构建路径来添加JAR,并将其放入WEB-INF / lib中。但没有得到连接以下是我的代码。

import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.ResultSet;  
import java.sql.Statement; 

import com.microsoft.sqlserver.jdbc.SQLServerDriver;
/** 
 * @author www.javaworkspace.com 
 *  
 */  
public class SMSdao {  
    public static void main(String[] args) {  
        try {  

         Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            Connection connection = DriverManager  
                    .getConnection(  
                            "jdbc:sqlserver://192.128.10.17:1433;databaseName=TEK_R;selectMethod=cursor",  
                            "sa", "sai@123");  

            System.out.println("DATABASE NAME IS:"  
                    + connection.getMetaData().getDatabaseProductName());  
            Statement statement = connection.createStatement();  
            ResultSet resultSet = statement  
                    .executeQuery("SELECT * FROM dbo.SMS_OUT");  
            while (resultSet.next()) {  
                System.out.println("Message:"  
                        + resultSet.getString("MessageIn"));  
            }  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
}


并且堆栈trcae是:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)
        at SMSdao.main(SMSdao.java:13)


尝试一切,做所有事情,无论我在网上发现什么。我在Windows 7上使用jdk 7和tomcat 6。

最佳答案

您需要从Microsoft下载SQLServerDriver JDBC。 Class.forName正在搜索您指定的类名称,但在您的类路径中找不到它。

http://msdn.microsoft.com/en-us/sqlserver/aa937724

只需将jar放在您的项目类路径中(tomcat的共享库更好)。

关于java - MSSQL Server 2005-JDBC连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10561657/

相关文章:

java - 更新文本文件而不会丢失信息

sql-server - 空间索引

sql - 而不是NULL,如何在SELECT语句sql的结果中显示 `0`?

java - Eclipse在库jar中导出具有主类的可运行jar

java-双击托盘中的图标捕获事件

java - Java:API中的remove-common-words-method?

c# - SQL Server 备份和恢复

java - 只需将Eclipse RCP应用程序限制为仅以英语运行

android - 如何在Eclipse中安装Android 4.0(API 14)?

java - 如何在 JSF 输入字段中创建阴影