package Dao;
import java.sql.*;
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
public class BaseDao {

public static Connection getConnection(){
Connection conn=null;
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String url="jdbc:sqlserver://localhost:1433;databaseName=flight";
conn=DriverManager.getConnection(url,"sa","sa");
return conn;
}
catch(Exception e){
e.printStackTrace();
return null;
}
}
public static void closeConn(Statement st){
try{
if(st !=null){
st.close();
}
}
catch(SQLException e){
e.printStackTrace();

}
}
public static void main(String[] args){
if(BaseDao.getConnection()!=null)
{
System.out.println("OK");
}
else{
System.out.println("NO");
}
}
}運行時發生錯誤:如下
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Dao.BaseDao.getConnection(BaseDao.java:11)
at Dao.BaseDao.main(BaseDao.java:31)            換了端口試過了還是一樣,數據庫也試了好多次,但還是不行,不知道是什麼原因??

解决方案 »

  1.   

    驱动包弄错了、或者你看下 SQLServerDriver 那个类在包的位置,然后输入那个路径即可。
      

  2.   

    你用的是那个数据库驱动包啊.
    现在都用的是sqljdbc.jar,
    com.microsoft.sqlserver.jdbc.SQLServerDriver
      

  3.   

    如果楼主用的是sql2000的话,
    url = jdbc:microsoft:sqlserver://localhost:1433;databaseName=flight
    如果是sql2005的话,修改成这样
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 楼主url是2000的,驱动写的是05的,
      

  4.   

    String url="jdbc:sqlserver://localhost:1433;databaseName=flight"; 你把url中的databaseName换成大写DatabaseName再试一试
    java中好像要严格区分大小写
      

  5.   

    驱动问题,不同的数据库驱动程序不同,sqlserver2000跟sqlserver2005的都是不同的
      

  6.   

    参考下面这个:
    http://dev.csdn.net/article/51/51263.shtm要接的在eclipse中将要用到的jdbc驱动程序加入进去。