快好知 kuaihz订阅看过栏目

 

Apache Derby是一个完全用java编写的数据库,Derby是一个Open source的产品,基于Apache License 2.0分发。

Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做为单独的数据库服务器使用,也可以内嵌在应用程序中使用。Cognos 8 BI的Content Store默认就是使用的Derby数据库,可以在Cognos8的安装目录下看到一个叫derby10.1.2.1的目录,就是内嵌的10.1.2.1 版本的derby。

发展历史

Apache Derby 项目的目标是构建一个完全用 Java 编程语言编写的、易于使用却适合大多数应用程序的开放源码数据库。可以想像,开发一个数据库并不简单,Apache Derby 数据库也不例外(因为它是个开放源码软件,所以您可以自行查看它)。但是 Derby 项目并不是从零开始的。回到 1996 年,一个叫做 Cloudscape, Inc 的新公司成立了,公司的目标是构建一个用 Java 语言编写的数据库服务器。公司的第一个发行版在一年之后推出,后来产品的名称变成 Cloudscape。1999 年,Cloudscape, Inc. 被大型数据库厂商 Informix Software, Inc. 收购。

Informix Software 在 2001 年又被 IBM 收购,然后 IBM Cloudscape 数据库系统在许多 IBM 的产品中被用作内嵌的数据库引擎。2004 年 4 月,IBM 把 Cloudscape 数据库软件赠送给 Apache 软件基金会,从此 Apache Derby 项目诞生了。

这时,Cloudscape 数据库几乎已经有了 50 万行 Java 代码,所以花了一些时间才正确地把它转换成 Apache Derby 项目。经过孵化期之后,Derby 于 2005 年 7 月正式发布。所以虽然看起来像是新事物,但是 Derby 背后已经开发了几乎十年了。

IBM 继续管理 Cloudscape 数据库,该数据库是从 Apache Derby 源代码构建的。IBM 把 Cloudscape 数据库作为免费下载提供,而且为需要增强信心的客户提供收费的咨询服务。另外,Sun Microsystems 已经宣布它将包含一个修补过的 Apache Derby 版本作为它的 Java 数据库产品。来自 IBM 和 Sun 的强大投入,强化了 Apache Derby 数据库的光明前景。Derby 数据库也符合许多数据库标准,例如 SQL-92 和 JDBC 3.0 版本,所以开始用 Derby 数据库系统开发的应用程序可以容易地移植到其他数据库系统,例如 IBM DB2 通用数据。

主要特点

程序小巧,基础引擎和内嵌的JDBC驱动总共大约2MB。

基于Java、JDBC和SQL标准。

提供内嵌的JDBC驱动,你可把Derby嵌入到基于Java的应用程序中。

支持客户端/服务器模式。

安装、布置和使用简单。

使用技巧

配置环境变量

建立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.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%DERBY_HOME%\lib\derbynet.jar

创建数据库

打开命令行,进入想要放置数据库的目录,我的是:E:\Java\Joy \derby\Derby_data

然后输入ij

将会看到:

ij 版本 10.5

ij>

接下来就可以创建数据库了。

例:

1、 创建firstdb数据库:

ij> connect 'jdbc:derby:firstdb;create=true';

连接firstdb数据库:

ij> connect 'jdbc:derby:firstdb';

查询数据库等操作,只需要输入相应的Sql语句即可。

2、创建一个table:

create table firsttable(id int primary key, name varchar(20));

3、插入数据:

insert into firsttable values(1, 'Hotpepper');

在命令行测试一下:

select * from firsttable;

结果如下:

ID |NAME

——————————–

1 |Hotpepper

断开连接:

ij> disconnect;

退出ij:

ij> exit;

在程序中使用

在Java程序中使用Derby

首先要把相关的Derby jar包加进来(Build Path)。

如果是Maven工程,加入以下依赖

把derby-10.5.3.0.jar加进来,如果没有加进来会出现 “java.lang.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver”错误

好了,下面写JAVA代码进行测试:

OK,完成了。

运行后控制台输出如下信息:

投稿
非常不爽,删了吧! 相关词条:其他