derby数据库

一、简介

  Derby 易于管理。当嵌入到客户机应用程序中时, Derby 系统不需要任何管理干预。

  Derby 是可嵌入的。应用程序可以将数据库管理系统( Database Management System , DBMS )引擎嵌入应用程序进程中,从而无需管理单独的数据库进程或服务。通过网络服务器( Network Server )架构或您选择的服务器架构,可以将 Derby 作为单独的进程来运行。

  Derby 是Java 编写的内存数据库,属于 Apache 的一个开源项目,是一个纯 Java 的类库:对于 Java 开发人员,这点十分重要,因为他们正试图维护 Java 技术的优点,例如平台无关性、易于配置以及易于安装。

  Derby 不需要专有的 Java 虚拟机( Java Virtual Machine , JVM )。因为完全是用 Java 语言编写的,所以它适应所有合格的 JVM 。

  DerbyDBMS 引擎是轻量级的。类文件大小大约是 2MB ,并且只使用了 4MB 的 Java 堆。

  Derby 支持使用 Java 编写存储过程和函数,这些存储过程和函数可以在应用程序的任何层上运行。 Derby 没有专用的存储过程语言,它使用 JDBC 。

二、两种运行模式

  1.内嵌模式。Derby数据库与应用程序共享同一个JVM,通常由应用程序负责启动和停止,对除启动它的应用程序外的其它应用程序不可见,即其它应用程序不可访问它;

  2.网络模式。Derby数据库独占一个JVM,做为服务器上的一个独立进程运行。在这种模式下,允许有多个应用程序来访问同一个Derby数据库。

三、安装derby

  1.在derby官网下载derby的包,然后解压。

  1. 建立DERBY_HOME,值:D:\db-derby-10.10.2.0-bin
  2. 在Path加入:%DERBY_HOME%\bin
  3. 在CLASSPATH加入:
  4. %DERBY_HOME%\lib \derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%DERBY_HOME%\lib\derbynet.jar

  2.运行(使用ij脚本)

    (1)内嵌模式

      在命令行中找到bin目录,使用输入ij使用ij工具(或单击ij.bat后启动ij工具)。然后通过如下命令创建数据库,并与数据库创建连接:

        connect ‘jdbc:derby:mydb;create=true';

      (通过connect命令可以与指定数据库创建连接,通过一个JDBC URL来指定与哪个数据库创建连接。ij命令是不区分大小写的。参数中jdbc:derby是Derby数据库的驱动协议;firstdb是数据库名称,由于没有指定路径,数据库将会被创建在当前你命令行下所在的目录下;create=true表示如果数据库不存在,则创建该数据库;";"是ij命令的终止符。当数据库创建成功时,Derby会在当前你命令行下所在的目录下创建一个与数据库命一致(这里是mydb)的目录,其中存放了数据库的文件。)

      连接之后便可使用SQL语句操作数据库,或通过run命令运行sql文件:run 'E:/derby/demo/ToursDB_schema.sql';

      最后通过exit;来退出ij工具。

      在当前你命令行下所在的目录中有一个derby.log的日志文件,derby在其中记录的数据库启动、关闭的信息。

      连接驱动及URL:

        driver: org.apache.derby.jdbc.EmbeddedDriver

        url: jdbc:derby:E:/shiny/DdlUtils-test/mydb

    (2)网络模式

      网络模式下,需要使用两个控制台窗口,一个用于启动Derby数据库服务端,另一个做为访问Derby数据库的客户端。

      1.在命令行进入bin目录,运行startNetworkServer.bat启动数据库服务器;

      2.另一个端口跟运行内嵌模式的Derby数据库类似,只是连接的命令不同:

        connect 'jdbc:derby://localhost:1527/E:/my/derby/mydb;create=true';

      (其中localhost:1527是本地和端口号,后面的是G盘的某个数据库,也可以是网上的)

      连接驱动及URL:

        driver: org.apache.derby.jdbc.ClientDriver

        url: jdbc:derby://localhost:1527/E:/my/derby/mydb

    注意:两种模式连接数据库时使用的驱动包不同

四、jar包说明

  1.引擎库

    derby.jar是引擎库(必须的) 
    For embedded databases. 
    You always need this library for embedded environments. For client/server environments, you only need this library on the server.

  2.工具库

    1. derbytools.jar: Required for running all the Derby tools (such as ij, dblook, and import/export).
    2. derbyrun.jar: Executable jar file that can be used to start the Derby tools.

  3.网络服务端库

    如果是通过网络连接Derby(非嵌入方式),那么需要这个jar。 
    derbynet.jar: Required to start the Derby Network Server.

  4.网络客户端库

    derbyclient.jar: Required to use the Derby network client driver.

  5.本地语言库

    1. derbyLocale_cs.jar Required to provide translated messages for the Czech locale.
    2. derbyLocale_de_DE.jar Required to provide translated messages for the German locale.
    3. derbyLocale_es.jar Required to provide translated messages for the Spanish locale.
    4. derbyLocale_fr.jar Required to provide translated messages for the French locale.
    5. derbyLocale_hu.jar Required to provide translated messages for the Hungarian locale.
    6. derbyLocale_it.jar Required to provide translated messages for the Italian locale.
    7. derbyLocale_ja_JP.jar Required to provide translated messages for the Japanese locale.
    8. derbyLocale_ko_KR.jar Required to provide translated messages for the Korean locale.
    9. derbyLocale_pl.jar Required to provide translated messages for the Polish locale.
    10. derbyLocale_pt_BR.jar Required to provide translated messages for the Brazilian Portuguese locale.
    11. derbyLocale_ru.jar Required to provide translated messages for the Russian locale.
    12. derbyLocale_zh_CN.jar Required to provide translated messages for the Simplified Chinese locale.
    13. derbyLocale_zh_TW.jar Required to provide translated messages for the Traditional Chinese locale.

derby数据库的了解及使用的更多相关文章

  1. Powerdesigner自定义DBMS(以derby数据库为例)

    Powerdesigner自定义DBMS Powerdesigner以下简称PD.PD默认支持的DBMS不够用时,我们就需要自己定义了.以apache derby数据库为例.1.DBMS的定义文件PD ...

  2. Apache Derby数据库 安装、知识点

    Apache Derby数据库 安装: 下载路径:http://archive.apache.org/dist/db/derby/ 出处:http://www.yiibai.com/hive/hive ...

  3. 使用 Java DB (Derby) 数据库

    使用 Java DB (Derby) 数据库 https://netbeans.org/kb/docs/ide/java-db_zh_CN.html 本文档说明了如何在 NetBeans IDE 中设 ...

  4. 润乾报表与DERBY数据库的创建连接详解

     1. 问题概述 1.Derby数据库的创建过程 2.润乾报表连接Derby数据库展现数据 概述: Derby是Apache Software Foundation (ASF)的一个的孵化器项目. ...

  5. derby数据库windows自带的客户端

    本示例演示用windows自带的ij来操作derby数据库,包括建库,建表,插入数据,查询数据 首先要配置环境变量: 其次打开cmd输入如下图所示的命令: java代码如下: package com. ...

  6. derby数据库的一些总结

     本文主要是针对在osgi开发过程中的一些问题进行总结,其中dbcp数据源的配置是在SpringDM下配置的.一,derby数据源的内嵌模式       该模式的主要应用是嵌入式程序,因为其小巧,且不 ...

  7. JAVA连接Derby数据库

    其实,JAVA连接Derby数据库也很简单,和一般的数据库操作一样:1.加载驱动2.获取连接3.进行数据库操作4.记得关闭连接 示例如下: import java.sql.ResultSet; imp ...

  8. Derby 数据库 客户端 ij使用

    Derby是开源的.嵌入式的Java数据库程序,ij是Derby提供的客户端工具,相当于其他数据库提供的sqlplus工具. ij是纯Java的程序,不用安装,使用起来就像运行普通的Java应用程序一 ...

  9. derby数据库

    derby数据库 https://www.cnblogs.com/zuzZ/p/8107915.html Derby数据库的使用 https://www.cnblogs.com/wkfvawl/p/1 ...

随机推荐

  1. 手把手教你入门Yii2框架-1

    前言概述: 我是一名PHP开发工程师,最拿手的是版本2.0的Yii框架,在培训班里老师没教我Yii框架,只是由于我弟弟(同行)擅长Yii框架,所以我用得最多的就是Yii2.0,后台我学了ThinkPH ...

  2. 常用DIV+CSS命名大全集合

    一.命名规则说明:   -   TOP 1).所有的命名最好都小写 2).属性的值一定要用双引号("")括起来,且一定要有值如class="divcss5",i ...

  3. PAT甲级——1061 Dating (20分)

    Sherlock Holmes received a note with some strange strings: Let's date! 3485djDkxh4hhGE 2984akDfkkkkg ...

  4. .net EasyTree显示所级层级(无限级、整层级颗树)的另类写法。非递归

    获取整颗树的另类写法.非递归 //获取所有的菜单 List<T_Menu> menu = bll.getMenuByUsesrID("8189a7c1-6f15-4744-b6c ...

  5. Python—守护进程管理工具(Supervisor)

    一.前言简介 1.Supervisor 是一个 Python 开发的 client/server 系统,可以管理和监控类 UNIX 操作系统上面的进程.可以很方便的用来启动.重启.关闭进程(不仅仅是 ...

  6. 简述cookies 和 session

    session HTTP协议本身是无状态的,本身并不能支持服务端保存客户端的状态信息,于是,Web Server中引入了session的概念,用来保存客户端的状态信息. 1)当一个用户向服务器发送第一 ...

  7. javascript获取数组最后一个元素(三种方法)

    JavaScript 获取Array末尾元素 一.JavaScript pop() 方法 pop() 方法用于删除并返回数组的最后一个元素. 注意:pop() 方法将删除 arrayObject 的最 ...

  8. 解决UITextView滚动后无法显示完整内容

    滚动UITextView,偶尔内容只显示一半,现象如下

  9. scala编程(九)——控制抽象

    减少代码重复 所有的函数都被分割成通用部分,它们在每次函数调用中都相同,以及非通用部分,在不同的函 数调用中可能会变化.通用部分是函数体,而非通用部分必须由参数提供.当你把函数值用做参数时,算法的非通 ...

  10. 新年在家学java之基础篇--循环&数组

    因为“野味肺炎”的肆虐,过年被迫宅家只能吃了睡.睡了吃.这么下次只能长膘脑子空空,不如趁此机会重新学习java基础,为日后做铺垫~ 循环结构: 几种循环:for(::),while(){},do{}w ...