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 (主要用于执行存储过程)三个接口。