jdbc-odbc桥接器。import java.sql.*;
public class A
{
  Connection con;
  Statement sql;
  ResultSet rs;
  try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
  catch(ClassNotFoundException e){}
  try{
      con=DriverManager.getConnection("jdbc;odbc;redsun","snow","ookk");
      sql=con.createStatement();
      rs=sql.executeQuery("select * from 表名");
      con.close();
     }
  catch(SQLException e1){}
  
}

解决方案 »

  1.   

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    这里,Class是包java.sql中的一个类,该类通过调用它的静态方法forName就可以建立JDBC-ODBC桥接器。
      

  2.   

    Connection con=DriverManager.getConnection("jdbc;odbc;数据源名字","数据源的login name","数据源的password");
    如果在配置数据源时没设姓名和密码则可写为
    Connection con=DriverManager.getConnection("jdbc;odbc;数据源名字","","");
      

  3.   

    对阿,这种方法我知道的,也是平时我们用的最普遍的方法,我的意思是书上说连接数据库有4种方式,你说的是jdbc-odbc桥,那么其他3种方式呢,如什么纯java驱动、本地驱动什么的?怎么使用?
      

  4.   

    Connection con=DriverManager.getConnection("jdbc;odbc;数据源名字","数据源的login name","数据源的password");
    如果在配置数据源时没设姓名和密码则可写为
    Connection con=DriverManager.getConnection("jdbc;odbc;数据源名字","","");
    -----
    楼上说的这个有时候是不太灵敏,
    Connection con=DriverManager.getConnection("jdbc:odbc:数据源配置名字")好象是这样
      

  5.   

    这种方法一般连接比较慢,如果用EJB的话,可以直接配置数据池。然后通过数据源以及Context访问数据库会比较快
      

  6.   

    一般数据库可能不会提供4种全部的驱动,举个例子
    你用jdbc/odbc桥,需要配置odbc
    象sqlserver,你可以配置odbc(网络也可以)
    但是也有直接连接的方式,网上下载的jdbc驱动也可以,而且效率更好
      

  7.   

    连接数据库大全现在有好多初学jsp的网友经常会问数据库怎么连接啊,怎么老出错啊?所以我集中的在这写篇文章供大家参考,其实这种把数据库逻辑全部放在jsp里未必是好的做法,但是有利于初学者学习,所以我就这样做了,当大家学到一定程度的时候,可以考虑用MVC的模式开发。在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下面SQL建 
    create table test(test1 varchar(20),test2 varchar(20) 
    然后向这个表写入一条测试纪录 
    那么现在开始我们的jsp和数据库之旅吧。 
    一、jsp连接Oracle8/8i/9i数据库(用thin模式) 
    testoracle.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
    String url="jdbc:oracle:thin:@localhost:1521:orcl"; 
    //orcl为你的数据库的SID 
    String user="scott"; 
    String password="tiger"; 
    Connection conn= DriverManager.getConnection(url,user,password); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    二、jsp连接Sql Server7.0/2000数据库 
    testsqlserver.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 
    //pubs为你的数据库的 
    String user="sa"; 
    String password=""; 
    Connection conn= DriverManager.getConnection(url,user,password); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    三、jsp连接DB2数据库 
    testdb2.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); 
    String url="jdbc:db2://localhost:5000/sample"; 
    //sample为你的数据库名 
    String user="admin"; 
    String password=""; 
    Connection conn= DriverManager.getConnection(url,user,password); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    四、jsp连接Informix数据库 
    testinformix.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("com.informix.jdbc.IfxDriver").newInstance(); 
    String url = 
    "jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver; 
    user=testuser;password=testpassword"; 
    //testDB为你的数据库名 
    Connection conn= DriverManager.getConnection(url); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    五、jsp连接Sybase数据库 
    testmysql.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("com.sybase.jdbc.SybDriver").newInstance(); 
    String url =" jdbc:sybase:Tds:localhost:5007/tsdata"; 
    //tsdata为你的数据库名 
    Properties sysProps = System.getProperties(); 
    SysProps.put("user","userid"); 
    SysProps.put("password","user_password"); 
    Connection conn= DriverManager.getConnection(url, SysProps); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    六、jsp连接MySQL数据库 
    testmysql.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("org.gjt.mm.mysql.Driver").newInstance(); 
    String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1" 
    //testDB为你的数据库名 
    Connection conn= DriverManager.getConnection(url); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    七、jsp连接PostgreSQL数据库 
    testmysql.jsp如下: 
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("org.postgresql.Driver").newInstance(); 
    String url ="jdbc:postgresql://localhost/soft" 
    //soft为你的数据库名 
    String user="myuser"; 
    String password="mypassword"; 
    Connection conn= DriverManager.getConnection(url,user,password); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from test"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    您的第一个字段内容为:<%=rs.getString(1)%> 
    您的第二个字段内容为:<%=rs.getString(2)%> 
    <%}%> 
    <%out.print("数据库操作成功,恭喜你");%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body> 
    </html> 
    我这也是来自网上,我说这话的意思是,你要学会从网上搜索资料!网上资料多的很!
      

  8.   

    To:51victory 你强,是个很好的材料,而且谢谢你的忠告,我找了不少,可重点都不在我的问题上其实可能你们并没有完全理解我的意思,zhouhouqu也许知道了我的用意,可是没有说的很清楚。
    我怎么知道这4种驱动怎么区分?而且如何使用比较合理
      

  9.   

    三种
    thin
    ora8
    Jserver
    otn.oracle.com上面有
      

  10.   

    这三种是给oracle的
    JDBC是一个统一的java连接数据库接口,现在是2.0
    各数据库厂家根据这个开发各自的数据库连接库
    懂了吧
      

  11.   

    连接方式嘛好像是这几种
    1、直连的Connection conn= DriverManager.getConnection(url,user,password); 
    2、datasource的
    3、编写连接池,有专门的lib
    4、上下文的,英文怎么写忘记了,中文就这意思一般使用datasource的居多,需要weblogic这种应用服务器支持