posts - 42, comments - 7, trackbacks - 0, articles - 1

利用JDBC编写访问数据库程序的步骤

Posted on 2008-04-25 09:49 TuringJava 阅读(596) 评论(0)  编辑  收藏 所属分类: JDBC

(1)引用必要的包
    import java.sql.*; //它包含有操作数据库的各个类与接口
     (2)加载连接数据库的驱动程序类
    为实现与特定的数据库相连接,JDBC                必须加载相应的驱动程序类。这通常可以采用
Class.forName()方法显式地加载一个驱动程序类,由驱动程序负责向 DriverManager  登记注
册并在与数据库相连接时,DriverManager 将使用此驱动程序。
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    注意:这条语句直接加载了 sun 公司提供的JDBC-ODBC Bridge 驱动程序类。
     (3)创建与数据源的连接
    String url="jdbc:odbc:DatabaseDSN";
    Connection con=DriverManager.getConnection(url,"Login","Password");
    注意:采用DriverManager 类中的 getConnection()方法实现与url 所指定的数据源建立连
接并返回一个 Connection 类的对象,以后对这个数据源的操作都是基于该 Connection 类对
象;但对于Access 等小型数据库,可以不用给出用户名与密码。
    String url="jdbc:odbc:DatabaseDSN";
    Connection con=DriverManager.getConnection(url);
    System.out.println(con.getCatalog()); //取得数据库的完整路径及文件名 

    JDBC 借用了url 语法来确定全球的数据库(数据库URL 类似于通用的URL),对由url
所指定的数据源的表示格式为

    jdbc::[ database locator]

    jdbc---指出要使用JDBC
    subprotocal---定义驱动程序类型
    database locator---提供网络数据库的位置和端口号(包括主机名、端口和数据库系统名等)
jdbc:odbc://host.domain.com:port/databasefile
    主协议jdbc  驱动程序类型为 odbc,它指明JDBC 管理器如何访问数据库,该例指名为

采用JDBC-ODBC 桥接方式;其它为数据库的位置表示。
    例如:装载 mySQL JDBC 驱动程序

    ……
    Class.forName("org.gjt.mm.mysql.Driver ");
    String url
    ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&chara
cterEncoding=8859_1"
    //testDB 为你的数据库名
    Connection conn= DriverManager.getConnection(url);

    例如:装载 Oracle JDBC OCI 驱动程序(用thin 模式)

    ……
    Class.forName("oracle.jdbc.driver.OracleDriver ");
    String url="jdbc:oracle:thin:@localhost:1521:orcl";
    //orcl 为你的数据库的SID
    String user="scott";
    String password="tiger";
    Connection conn= DriverManager.getConnection(url,user,password);
    ……

    注意:也可以通过con.setCatalog("MyDatabase")来加载数据库。

    例如:装载DB2 驱动程序

    ……
    Class.forName("com.ibm.db2.jdbc.app.DB2Driver ")
    String url="jdbc:db2://localhost:5000/sample";
    //sample 为你的数据库名
    String user="admin";
    String password="";
    Connection conn= DriverManager.getConnection(url,user,password);
    ……

    例如:装载MicroSoft SQLServer 驱动程序

    ……
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver ");
    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
    //pubs 为你的数据库的
    String user="sa";
    String password="";     
    Connection conn= DriverManager.getConnection(url,user,password);
    …… 
     (4)查询数据库的一些结构信息
    这主要是获得数据库中的各个表,各个列及数据类型和存储过程等各方面的信息。根据
这些信息,从而可以访问一个未知结构的数据库。这主要是通过 DatabaseMetaData  类的对
象来实现并调用其中的方法来获得数据库的详细信息(即数据库的基本信息,数据库中的各
个表的情况,表中的各个列的信息及索引方面的信息)。
    DatabaseMetaData dbms=con.getMetaData();
    System.out.println("数据库的驱动程序为  "+dbms.getDriverName());
     (5)查询数据库中的数据:
    在JDBC 中查询数据库中的数据的执行方法可以分为三种类型,分别对应Statement                           (用
于执行不带参数的简单 SQL            语句字符串),PreparedStatement      (预编译SQL      语句)和
CallableStatement (主要用于执行存储过程)三个接口。


只有注册用户登录后才能发表评论。


网站导航: