欢迎来到天天文库
浏览记录
ID:55698290
大小:42.00 KB
页数:4页
时间:2020-05-25
《基于JDB的数据存取技术.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于JDBC的数据存取技术作者简介∶徐代刚,杨峰,宋晓梅四川大学计算机系研究生;唐常杰四川大学计算机系教授研究方向∶数据库与知识库徐代刚,唐常杰,杨峰,宋晓梅(四川联合大学计算机系成都610064)摘要:本文讨论了使用Java数据库连接器(JDBC)连接和查询数据库的基本方法和一般过程,并给出完整的程序例子。关键词∶JDBC,Java,ODBC,对象,成员函数1.JDBC概述JDBC(JavaDatabaseConnectivity),即Java数据库连接,由一组用Java语言编写的类与接口API组成,这些类和API都包含在java.sql包中,在安装JavaJDK1.1时
2、自动装入。JDBC支持两类应用∶JavaApplication(应用程序)和JavaApplet(小应用程序)。前者是一个独立的应用程序;后者则在支持Java的浏览器中解释执行。当前,ODBC是访问关系型数据库中应用最广的编程接口,它几乎能将所有平台的所有数据连接起来。因此,JavaSoft公司开发出JDBC-ODBC桥,它允许ODBC驱动器作为JDBC驱动器使用。这是使JDBC迅速投入使用的一种现实方式。本文例示系统使用的便是JDBC-ODBC桥接驱动器。目前,其他类型的JDBC驱动器还有三种,它们是(1)本机API加上Java驱动器;(2)JDBC-Net纯Java驱动
3、器;(3)本机协议加上Java驱动器。它们应用于不同的系统环境,具体情况请参考其他资料。本文通过一个完整的例子和详细的程序注解,介绍了JDBC的关键技术。2.本文中使用的例子数据库本文中使用的数据库是MicrosoftAccess,称为groceries.mdb。库中的数据是某些干杂店的部分商品价格,其中食品表foods如表一,商店表stores如表二,价目表foodPrice如表三。食品号(foodNo)食品名(foodName)1苹果2荔枝3吐司4厖表一foodstable商店号(storeNo)商店名(storeName)1成北超市2成南面包房3厖.表二storest
4、able价目号priceNo商店号storeNo食品号foodNo价格(圆)priceval11215.022418.03454.204………表三foodPricetable3.使用JDBC连接数据库(1)在ODBC中登记数据源在ODBC管理器中增加Access数据库驱动器,登记数据源名为“GroceryPrices”。(2)数据库的连接所有数据库对象类和接口函数都在java.sql包中,因此首先要引入Java类。importjava.sql.*在连接ODBC数据源之前必须装载JDBC-ODBC桥接驱动程序。Class.forName(“sun.jdbc.odbc.Jdbc
5、OdbcDriver”);与数据源中的特定数据库建立连接需创建连接类(Connection)并指定数据库的URL地址。Stringurl=“jdbc:odbc:Groceryprices”;Connectioncon=DriverManager.getConnection(url);URL的格式如下∶jdbc:subprotocol:subnamesubprotocol是指一种由一个或多个驱动程序支持的数据库连接机制。例如,ODBC类型的数据源subprotocol为odbc。subname包含数据库位置信息,本例中就是数据源名Groceryprices。4.使用JDBC从
6、数据库获取相关信息连接上数据库以后,要从中操作数据,需使用三类对象提供信息∶数据库元数据(DatabaseMetaData)—它包含数据库的有关信息如表名、表索引、数据库产品名和版本号、数据库支持的操作等等。结果集(ResultSet)—它包含表的信息或查询的结果。结果集元数据(ResultSetMetaData)—它包含结果集的相关信息如字段名和字段类型。这些对象类的成员函数有很多,下面介绍一些基本函数,它们将在后面例子程序中用到。(1)数据库元数据(DatabaseMetaData)getCatalogs();返回数据库的目录信息。getURL();获取连接的数据库的U
7、RL地址。getDriverName();获取连接的数据库的驱动程序。getColumns(catalog,schema,tableNames,columnNames)返回指定表名的表的所有列名。catalog,schema通常为NULL。getTables(catalog,schema,tablemask,types[]);返回符合条件的表的描述。其参数含义如下∶catalog表所在的目录。对于JDBC-ODBC数据库,可置为NULL。这个所谓的目录实际上就是数据库所在文件系统的绝对路径。schema数据库的数据
此文档下载收益归作者所有