从Java6开始,Sun的JDK就附带了一个轻量级的数据库,名字叫做Derby。也就是Java DB,由IBM于2004年捐给Apache开源项目组。Derby是一个事务关系型的数据库管理系统,体积非常的小,所有的加起来大约2M左右吧。在最新的Java JDK6发布版里,Derby默认安装在%JAVA_HOME%/db目录下,包括核心库,演示程序以及一个例子数据库。Derby的优势在于体积小,管理操作简单。对于开发者来说,你可以轻易地用代码来创建和使用数据库,进行所有的数据库操作也是相当方便的。在系统的开发阶段使用Derby,可以加快开发速度。加上Java JDBC的跨数据库平台性,要转换数据库实现也是很容易的。
下面就来讲讲Derby的基本使用:
Derby提供了一个命令行工具:ij 表示交互式JDBC脚本工具。通过ij,我们可以连接到数据库,对数据库进行各种操作。要使用ij工具,你必须把下面两个jar文件放到你系统的CLASSPATH中,关于CLASSPATH的设置,你可不要告诉我你不会啊!
%JAVA_HOME%/db/lib/derby.jar
%JAVA_HOME%/db/lib/derbytools.jar
其中,derby.jar包含JDBC驱动,derbytools.jar是ij工具本身。设置好CLASSPATH后,我们就可以输入下面的命令来使用ij工具,这里我们以Derby自带的演示数据库toursdb为例:
E:/我的文档>java org.apache.derby.tools.ij
ij 版本 10.2
ij> connect ‘jdbc:derby:c:/Program Files/Java/jdk1.6.0/db/demo/databases/toursdb’;
ij> SELECT * FROM countries WHERE country LIKE 'C%';
COUNTRY |C&|REGION
--------------------------------------------------------
Cambodia |KH|Asia
Cameroon |CM|Africa
Canada |CA|North America
Cape Verde |CV|Africa
Chile |CL|South America
China |CN|Asia
Colombia |CO|South America
Congo |CG|Africa
Costa Rica |CR|Central America
Cote d'Ivoire |CI|Africa
Cuba |CU|Caribbean
Czech Republic |CZ|Europe
已选择 12 行
ij>exit;
这样就退出了ij,下面讲一下新建数据库和表的操作。要创建数据库,我们需要给connect命令带上一个”create=true”参数。如果之前已经连上一个已存在的数据库,那应该先使用disconnect命令断开连接:
ij> connect 'jdbc:derby:C:/Program Files/Java/jdk1.6.0/db/demo/databases/toursdb';
ij> disconnect;
ij> connect 'jdbc:derby:TestDB;create=true';
ij> CREATE TABLE book(title VARCHAR(50), isbn CHAR(13), author VARCHAR(50));
已插入/更新/删除 0 行
ij> INSERT INTO book VALUES('Thinking in Java', '1234-37-134-7', 'Bruce Eckel');
已插入/更新/删除一行
ij> INSERT INTO book VALUES('Core Java', '8888-37-134-8', 'Cay Hostman');
已插入/更新/删除一行
ij> SELECT * FROM book;
TITLE |ISBN |AUTHOR
--------------------------------------------------------------------------------
-----------------------------------
Thinking in Java |1234-37-134-7|Bruce Eckel
Core Java |8888-37-134-8|Cay Hostman
已选择 2 行
ij>exit;
使用connect 'jdbc:derby:TestDB;create=true';创建新数据库TestDB,Derby会在当前目录(你输入java org.apache.derby.tools.ij时所在的目录)创建一个数据库,子目录名就是数据库的名称。同时在当前目录还会创建一个derby.log文件,这是一个错误日志文件,记录了异常情况下的一些信息。TestDB目录下的文件,保存的就是整个数据库的信息了,我们绝不应该直接修改这些文件!
如上面所示,Derby提供的命令行工具很容易使用。运行命令后,使用connect来连接数据库,之后就可以使用SQL语言来对数据库进行常用的操作了。Derby实现了SQL-92的核心子集,同时也实现了SQL-99的部分特性。关于Derby具体的使用和操作,请参考Apache网站的在线文档:
Getting started: http://db.apache.org/derby/docs/10.2/getstart/
Derby Reference Manual: http://db.apache.org/derby/docs/10.2/ref/
Derby Developer's Guide: http://db.apache.org/derby/docs/10.2/devguide/
好了,关于Derby的使用就写到这里吧!我打算接下来再写一篇关于JDBC4的文章,到时会再次使用到Derby数据库,也会更加详细的讲解Derby的使用!
最后提一下,之前我一直是使用HSQLDB的。HSQLDB也是一个开源的小型数据库,功能强大且使用方便,关于两者的优劣对比,我并没有做过,也没有说这个话的能力。至于使用哪个,选择权完全在你的手上。不过既然Java6把Derby包含在发布版里,那估计今后Derby也会被更多人了解和使用吧。
本文参考了:Wrox.Professional.Java.JDK.6.Edition.Jan.2007一书第一部分第一章
分享到:
相关推荐
【标题】"db-derby.rar_derby_derby_java" 指向的是一个与Apache Derby相关的压缩包,其中可能包含了Derby数据库的资源和Java相关的开发材料。Apache Derby是一款开源的关系型数据库管理系统,它是Java编写并且完全...
- 输入 JavaDB 根目录 (javadb) 的路径。 - 设置数据库位置,可以使用创建的 Home 目录或者保留默认设置。 - 单击“确定”。 - **启动服务器并创建数据库**: 1. **启动服务器**: - 在“服务”窗口中,右键...
Derby Developer's Guide. Purpose of this guide This guide explains how to use the core Derby technology and is for developers building Derby applications. It describes basic Derby concepts, such as ...
JavaDB,也称为Derby,是Oracle公司提供的一款开源、轻量级的关系型数据库管理系统,它是Java平台上的一个重要组成部分,特别适合于嵌入式应用和小型项目。本指南将详细阐述如何安装JavaDB,以及如何进行基本的配置...
Java DB(英文全称data base,数据库)是依照某种数据模型组织起来并存放二...Java DB 是Oracle 支持的Apache Derby 开源数据库的发行版本。它通过JDBC 和Java EE API 支持标准的ANSI/ISO SQL。Java DB 包括在JDK 中。
总的来说,Java SE 6中的Java DB(Derby)为开发者提供了一种快速开发和测试数据库应用的工具,简化了数据库管理,降低了入门门槛,使得Java程序员可以更专注于业务逻辑的实现。通过学习和掌握Derby,开发者能够更好...
根据提供的文件信息,可以看出这份文档主要与Sun Microsystems公司的一款产品有关,尽管标题提及了“javadb”,但在给出的部分内容中并未直接涉及Java DB的具体细节。不过,考虑到这份文档的背景以及描述中提到的...
JavaDB_Driver中的derby.jar文件是JavaDB驱动程序的主要组成部分,包含所有必要的类和资源,使得Java应用程序能够连接、查询、更新和管理JavaDB数据库。 使用JavaDB_Driver进行数据库操作时,通常需要以下几个步骤...
### Derby Java DB 参考手册知识点详解 #### 关于Derby数据库 Derby是一款开源的关系型数据库管理系统(RDBMS),特别适用于Java应用程序。它完全用Java语言编写,并且可以作为嵌入式数据库运行,也可以作为客户端...
试过了,可以用的。这次没有出现 数据库连接错误的问题
JavaDB,全称为Apache Derby,是一款轻量级的关系型数据库管理系统,由Apache软件基金会开发并维护。它基于Java平台,完全兼容SQL标准,是Java应用程序的理想选择,特别是对于那些需要内嵌式数据库解决方案的开发者...
JavaDB 也被称为 Derby,是一个开源的关系数据库管理系统,支持标准的 SQL 语句,能够在 Java 应用程序中使用。 安装 JavaDB 要安装 JavaDB,需要从 Oracle 官方网站下载最新版本的 JavaDB(当前版本为 10.5.3.0)...
JavaDB,全称为Apache Derby,是Java平台上的一个开源、免费的关系型数据库管理系统,由Apache软件基金会维护。它轻量级、嵌入式且完全符合SQL标准,是初学者和小型应用程序的理想选择。本示例将详细介绍如何使用...
Java DB,也称为Apache Derby,是Java 6中引入的一个重要的组成部分。它是完全用Java语言编写的开源数据库管理系统,属于Apache软件基金会的项目。Derby以其小巧轻便著称,只有2MB的大小,但提供了丰富的数据库管理...
Java嵌入式数据库的驱动包,详见JDK1.6的说明文档
然后,我们需要配置环境变量,建立`DERBY_HOME`环境变量,值为`E:\Java\Joy\derby\db-derby-10.5.3.0-bin\db-derby-10.5.3.0-bin`。在`Path`中添加 `%DERBY_HOME%\bin`,在`CLASSPATH`中添加`%DERBY_HOME%\lib\derby...
Java Derby,全称为Apache Derby,是一款轻量级、开源的关系型数据库管理系统,它完全由Java编写,因此可以在任何支持Java的平台上运行。作为Apache软件基金会的项目,Derby以其小巧、高效、易于集成的特点,被广泛...
#### 一、Java DB与Derby的关系 Java DB是基于Java编程语言和SQL的一种关系型数据库管理系统。它实际上是由Apache Software Foundation(ASF)开源的关系型数据库项目——Derby发展而来的一个商业版本。这意味着...