我用的环境
系统:xp     JDK:jdk1.6.0_10    SQL:SQL Server 2005     JDBC:sqljdbc_1.2
安装路径:
JDK:C:\Program Files\Java\jdk1.6.0_10
JDBC:C:\Program Files\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\chs
SQL:C:\Program Files\Microsoft SQL Server
代码如下:import java.sql.*;class Test {

public static void main(String[] srg) {
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; //加载JDBC驱动 
String dbURL = "jdbc:sqlserver://WANGYUE-A7337C0:1433; DatabaseName=Xk"; //连接服务器和数据库test 
String userName = "sa"; //默认用户名 
String userPwd = "sa405"; //安装sql server 2005时的密码 
Connection dbConn;

try {
Class.forName(driverName); 
dbConn = DriverManager.getConnection(dbURL, userName, userPwd); 
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful! 
//SELECT * FROM Student GO
} catch (Exception e) { 
e.printStackTrace(); 
}
}
}运行结果:java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at Test.main(sdj.java:22)Process completed.请教一下各位高手,要怎么弄才可以啊另外,如果要在程序里执行SQL命令,SQL语句写在哪里

解决方案 »

  1.   

    java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
    类没找到
      

  2.   

    有一个class文件没有找到啊 你的SqlServer2005的驱动包 有可能没有拷贝到项目中来啊 没有找到SqlServer2005的驱动包
      

  3.   

    SQLServer的jar包你有没有导入哈?另外要执行sql的语句是在写在jdbc方法里的,如PreparedStatement方法
      

  4.   

    1.驱动包的名字好像是这个sqljdbc.jar,然后把它复制到jdk目录\jdk1.5\jre\lib\ext下。
    2.启动sql 2005服务,启动tcp/ip协议。
    3.url:"jdbc:sqlserver://localhost:1433;database=xxx;user=sa;password=xxx";
      

  5.   

    2000 和 2005 驱动类 与 url不一样com.microsoft.sqlserver.jdbc.SQLServerDriverjdbc:sqlserver://localhost:1433
      

  6.   

    还有驱动jar也不一样不是那三个jar了不过你既然是classnotfound  我觉得你jar应该是对的
      

  7.   

    把你的驱动包(sqljdbc_1.2)导入到工程看SQLServerDriver这个类是不是在你的所写的包下(com.microsoft.jdbc.sqlserver.SQLServerDriver)不过sqlserver2005的好像是在这个包下的(com.microsoft.sqlserver.jdbc.SQLServerDriver)
      

  8.   

     String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; //加载JDBC驱动 com.microsoft.sqlserver.jdbc.SQLServerDriver比较一下!
      

  9.   

    将驱动程序路径设置到classpath路径中。
      

  10.   

    改过了String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; //加载JDBC驱动 
            String dbURL = "jdbc:sqlserver://WANGYUE-A7337C0:1433; DatabaseName=Xk"; //连接服务器和数据库test classpath为: .;C:\Program Files\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\chs可惜还是没成功文件名:Test    计算机名:WANGYUE-A7337C0
      

  11.   

    SqlServer2005的驱动包的问题 检查4楼步骤
      

  12.   

    在sql server 2000 中加载驱动和URL路径的语句是
    String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sample";
    而sql server 2005 中加载驱动和url的语句则为
    String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=sample"; 
    如果写法错误将会找不到驱动.
    -------------------------------------------------------------
    Java连接SQL Server 2005一、JAVA连接SQL的语句 
    JAVA连接SQL2000语句为: 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    DriverManager.getConnection("jdbc:odbc:数据库名","数据库登录名","登录密码"); 
    但连接SQL2005,已经改为: 
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
    DriverManager.getConnection("jdbc:sqlserver://localhost:1433; 
    DatabaseName=数据库名","数据库登录名","登录密码"); 
    二、JAVA连接SQL都要用到驱动程序 
    SQL2000需要三个jar包:mssqlservice.jar,msutil.jar,msbase.jar 
    SQL2005需要一个jar包:sqljdbc.jar 
    所以SQL2000和2005的连接方法是不一样的, 
    到微软下载"Microsoft SQL Server 2005 JDBC Driver"最新版本,现在的应该是1.2 
    下面Microsoft SQL Server 2005 JDBC Driver的安装说明: 
    1. 将 sqljdbc__enu.exe 下载 
    2. 运行 sqljdbc__enu.exe 
    3. 出现提示时,输入安装目录;建议您将此 zip 文件解压缩到 %ProgramFiles% 中的默认目录下: 
    Microsoft SQL Server 2005 JDBC Driver 
    4.在环境变量CLASHPATH后加上C:\Program Files\Microsoft SQL Server 2005 JDBC 
    Driver\sqljdbc_1.2\enu\sqljdbc.jar(这是1.2版的,其它版本按实际修改......) 
    但上面只解决了驱动程序的问题..... 
    转载:
    http://hi.baidu.com/it_lionlee/blog/item/aec797095776c2db63d9862f.html
      

  13.   

    SQL SERVER的驱动包没有加到工程里去。
    将驱动包复制到WEBROOT/WEB-INF/LIB下,一般会被自动加到build path里,但如果没有的话,右键驱动包,选择build path --> add to the build path.
      

  14.   

    要在官方下载一个JDBC的JAR,并加入classpath.
      

  15.   

    那个已经弄了,我是说SQL 的语句放在 java 程序的什么位置,怎么放
      

  16.   

    我现在说的不是 怎么连接数据库 的问题了
    而是在程序里面怎么执行 SQL 语句也就是说SQL 语句放在程序的什么位置,怎么放?
      

  17.   

    对SQL语句进行调整,往往有一项前期工作,就是定位最常用的SQL 语句。Oracle数据库可以从多个方面取得SQL语句。如从数据库自身的存储过程或者函数中取得,也可以从前台的应用程序中取得。所以,数据库管理员必须学会如何从数据库当前程序库缓存中对已经存在的SQL语句进行采样。了解当前使用最频繁的SQL语句以及其对应的资源消耗情况。只有如此,数据库管理员才能够对症下药,解决SQL语句执行效率不高的问题。 
      

  18.   

    连接数据库首先应该把你要连接的数据库驱动放你项目里,然后再尝试连接数据库。
    在程序里执行SQL语句有两种方法,一中是PreparedStatement,另一种是Statement。
    如果你想让SQL语句更加的健壮(例如 String sql = "select * from users where u_name=?" 使查询更加灵活),建议你使用PreparedStatement,因为它有个setXXX()方法,可以让你设置SQL语句中的?
    如果你还不明白的话我就给你弄个简单的小代码什么的。。
      

  19.   

    你要在项目中把那个驱动jar文件包含到链接库里面啊...这样才不会有这种连接问题!