Derby

来自站长百科
跳转至: 导航、​ 搜索
Deby

DerbyApache软件基金会所研发的开放源码数据库管理系统;由于Derby是一个纯Java程序,因此只需要操作系统支援Java虚拟机,Derby便可执行。它可以嵌入到基于Java的解决方案中。Derby确保数据完整性,并提供负责的事务处理操作。默认的配置中不包含任何独立的数据库服务器。只需要将其 .jar 文件复制到项目中即可完成安装。

词条概况[ ]

特性[ ]

Derby拥有一个令人惊奇的特性列表。它可以支持关系数据库中的所有企业级的特性,包括:

  • 崩溃恢复
  • 事务回滚和提交
  • 行/表级锁
  • 视图
  • 主键/外键约束
  • 触发器
  • 子查询表达式

一部分的列表特性使Derby从其他的Java 关系数据库管理系统中分离出来。

Derby的部署方式[ ]

  • 嵌入式:Derby被单个用户的Java应用程序使用,在这种模式下,Derby和应用程序运行在同一个JVM中。Derby对于终端用户几乎是透明的,因为它的启动和终止都是由应用程序来控制,而不需要任何的管理。
  • 服务器模式:Derby由应用程序启动,此时通过用户可以通过网络连接。在这种模式下,Derby运行在服务器主机的JVM中。其他JVM的应用程序通过连接服务器来访问数据库。

Derby数据库简明使用[ ]

下载并安装Derby[ ]

  • 下载地址:官方下载地址,下载最新版本。
  • 解压缩到任意文件夹,如:E:\Java\Joy\derby

配置环境变量[ ]

  • 建立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

测试Derby安装成功与否[ ]

  • 开始—Run—CMD
  • 运行 sysinfo
  • 如果安装成功,将会看到相关信息,下面是截取的部分信息。
——— Derby 信息 ——–
JRE – JDBC: Java SE 6 – JDBC 4.0
[E:\Java\Joy\derby\db-derby-10.5.3.0-bin
\db-derby-10.5.3.0-bin\lib\derby.jar] 10
.5.3.0 – (802917)
[E:\Java\Joy\derby\db-derby-10.5.3.0-bin
\db-derby-10.5.3.0-bin\lib\derbytools.ja
r] 10.5.3.0 – (802917)
[E:\Java\Joy\derby\db-derby-10.5.3.0-bin
\db-derby-10.5.3.0-bin\lib\derbynet.jar]
10.5.3.0 – (802917)
[E:\Java\Joy\derby\db-derby-10.5.3.0-bin
\db-derby-10.5.3.0-bin\lib\derbyclient.j
ar] 10.5.3.0 – (802917)

创建和使用数据库[ ]

  • 打开命令行,进入想要放置数据库的目录,如: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)); 
  • 插入数据:
insert into firsttable values(1, ‘Hotpepper’);
  • 在命令行测试一下:
select * from firsttable; 
  • 结果如下:
ID |NAME
——————————–
1 |Hotpepper
  • 其它命令

1、断开连接:

ij> disconnect;

2、退出ij:

ij> exit; 

在Java程序中使用Derby[ ]

  • 首先要把相关的Derby jar包加进来(Build Path)。
  • 把derby.jar加进来,如果没有加进来会出现 “java.lang.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver”错误
  • 通过以下JAVA代码进行测试:
  import java.sql.Connection;
  import java.sql.DriverManager;
  import java.sql.ResultSet;
  import java.sql.SQLException;
  import java.sql.Statement;
  public class Test {
  private static String driver = “org.apache.derby.jdbc.EmbeddedDriver”;
  private static String protocol = “jdbc:derby:”;
  String dbName = “E:\\Java\\Joy\\derby\\Derby_data\\firstdb”;
  static void loadDriver() {
  try {
  Class.forName(driver).newInstance();
  System.out.println(“Loaded the appropriate driver”);
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  public void doIt() {
  Connection conn = null;
  Statement s = null;
  ResultSet rs = null;
  System.out.println(“starting”);
  try {
  conn = DriverManager.getConnection(protocol + dbName
  + “;create=true”);
  } catch (SQLException e) {
  e.printStackTrace();
  }
  System.out.println(“Connected to and created database ” + dbName);
  try {
  s=conn.createStatement();
  rs=s.executeQuery(“select * from firsttable”);
  while (rs.next()) {
  System.out.println(rs.getInt(1));
  System.out.println(rs.getString(2));
  }
  } catch (SQLException e1) {
  e1.printStackTrace();
  }
  try {
  conn.close();
  conn = null;
  s.close();
  s = null;
  rs.close();
  rs = null;
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  public static void main(String[] args) {
  Test t = new Test();
  t.loadDriver();
  t.doIt();
  } 
    }

相关条目[ ]

参考来源[ ]