我用jsp做了一个用户注册的页面,用的是文本编辑器写的,完了后把它放到Tomcat下的Webapp下用浏览器看时就是不能连接数据库提示Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序这是什么问题啊 : 我一直搞不明白  求高手帮忙解答  下面是我数据库的代码
public class DBO {
private String URL;
private String classname;
private String username;
private String password;

private Connection con;
private Statement stm;
private ResultSet rs;

public DBO(){
URL="jdbc:odbc:db_FABD01";
classname="sun.jdbc.odbc.JdbcOdbcDriver";
username="sa";
password="";
}

private void LoadDriver(){
try{
Class.forName(classname);
}catch(ClassNotFoundException e){
System.out.println("加载驱动程序失败!");
e.printStackTrace();
}
}

private Connection getCon(){
LoadDriver();
try{
con=DriverManager.getConnection(URL,username,password);
}catch(Exception e){
System.out.println("创建数据库连接失败!");
e.printStackTrace();
}
return con;
}

private Statement getStm(){
getCon();
try{
stm=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
}catch(Exception e){
System.out.println("创建Statement对象失败!");
e.printStackTrace();
}
return stm;
}

public ResultSet getRs(String sql){
if(sql==null)
sql="";
getStm();
try{
rs=stm.executeQuery(sql);
}catch(Exception e){
System.out.println("查询数据库失败!");
e.printStackTrace();
}
return rs;
}
public int update(String sql){
if(sql==null)
sql="";
getStm();
int i=-1;
try{
i=stm.executeUpdate(sql);
}catch(Exception e){
i=-1;
e.printStackTrace();
}finally{
closed();
}

return i;
}
public void closed(){
try{
if(this.rs!=null)
rs.close();
if(this.stm!=null)
stm.close();
if(this.con!=null)
con.close();
}catch(Exception e){
e.printStackTrace();
}
}

解决方案 »

  1.   

    当我用这种方式连接数据库是服务器就提示连接数据库失败求高手指点
    public DBO(){
    System.out.println("数据构造");
    URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_FABD01";
    classname="com.microsoft.jdbc.sqlserver.SQLServerDriver";
    username="sa";
    password="";
    createpage=new CreatePage();
    }

    private void LoadDriver(){
    try{
    Class.forName(classname);
    }catch(ClassNotFoundException e){
    System.out.println("加载驱动程序失败!");
    e.printStackTrace();
    }
    }

    private Connection getCon(){
    LoadDriver();
    try{
    con=DriverManager.getConnection(URL,username,password);
    }catch(Exception e){
    System.out.println("创建数据库连接失败!");
    e.printStackTrace();
    }
    return con;
    }

    private Statement getStm(){
    getCon();
    try{
    stm=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
    }catch(Exception e){
    System.out.println("创建Statement对象失败!");
    e.printStackTrace();
    }
    return stm;
    }

    public ResultSet getRs(String sql){
    getStm();
    try{
    rs=stm.executeQuery(sql);
    }catch(Exception e){
    System.out.println("查询数据库失败!");
    e.printStackTrace();
    }
    return rs;
    }
      

  2.   

      sqlserver的服务器开了吗 先测试能打开数据库吗 ip 本地端口号 是1433吗 
      

  3.   

    mssqlserver.jar  msbase.jar   msutil.jar都放在了Tomcat的lib目录下了
      

  4.   

    数据库连接没错啊
    而且我写了一个纯java的测试类可以连接啊也显示结果了  代码如下
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;public class QueryRecord {
    private Connection conn=null;
    private Statement st=null;
    private ResultSet rs=null;  

    public QueryRecord(){
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    }catch(ClassNotFoundException e){
    e.printStackTrace();
    }
    }


    public void showRecord(){
    try{
    String url="jdbc:odbc:Flight2";
    String usename="sa";
    String password="";
    conn=DriverManager.getConnection(url,usename,password);
    st=conn.createStatement();
    String sql="select*from flight";
    rs=st.executeQuery(sql);
    while(rs.next()){
    System.out.print(rs.getString(1)+"\t");
    System.out.print(rs.getString(2)+"\t");
    System.out.print(rs.getString(3)+"\t");
    System.out.print(rs.getString(4)+"\t");
    System.out.print(rs.getString(5)+"\t");
    System.out.print(rs.getString(6)+"\t");
    System.out.print(rs.getString(7)+"\t");
    System.out.print(rs.getString(8)+"\t");
    System.out.println(rs.getString(9)+"\t");
    }
    }catch(SQLException e){
    e.printStackTrace();
    }
    finally{
    try{
    rs.close();
    st.close();
    conn.close();
    }catch(SQLException e){
    e.printStackTrace();
    }
    }
    } /**
     * @param args
     */
    public static void main(String[] args) {
    QueryRecord query=new QueryRecord();
    query.showRecord();
    // TODO Auto-generated method stub }
    }
      

  5.   

    为什么加入了JSP来显示就不行了  是不是服务器什么没配置好
      

  6.   

    想要相关语言的所有资料吗?java,c++,c#,html,javascript,javaweb,sqlserver,oracle,jquery,Linux,等等等等,程序员必备的学习资料,快来看看吧。
    我的压缩包里面不止一两样东西哦,那可是我学习和工作的所有资料,不管是学习还是工作都会需要。
    http://download.csdn.net/user/yangtonghai
      

  7.   

    将连接的数据源在系统DSN下连接。