1,下载并安装Derby:

下载地址:http://db.apache.org/derby /derby_downloads.html,下载最新版本。

我用的是10.5.3.0。

解压缩到任意文件夹,我的是:E:\Java\Joy\derby

2,配置环境变量:

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

3,测试看看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)

4,创建和使用数据库

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

然后输入ij

将会看到:

ij 版本 10.5
ij>

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

例:
创建firstdb数据库:
ij> connect ‘jdbc:derby:firstdb;create=true’;
连接firstdb数据库:
ij> connect ‘jdbc:derby:firstdb’;

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

创建一个table:

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

插入数据:

insert into firsttable values(1, ‘Hotpepper’);

在命令行测试一下:

select * from firsttable;

结果如下:

ID         |NAME
——————————–
1          |Hotpepper

其它命令
断开连接:
ij> disconnect;
退出ij:
ij> exit;

5,在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();
}
}

OK,完成了。

—————————————————-

附:复制粘贴Derby数据库:

备份Derby数据库(derby-10.5.3.0)

小试了一下,很简单的,就复制粘贴就好了。

找到想要复制的数据库文件夹,比如:

C:\Program Files\SQuirreL SQL Client\firstdb

我们就把整个firstdb文件夹复制下来,然后粘贴到想要粘贴的地方。

就那么简单。

以上是我突发奇想试试看,没想到就成了。在网上搜了一下,貌似derby备份的方法不是这样的,而这种方法莫非是传说中的“热备份”?

6,在DbVisualizer中使用Derby

选择Database时选择到数据库的目录。

Derby安装,创建数据库,在Java程序中使用Derby的更多相关文章

  1. 在java程序中使用JDBC连接mysql数据库

    在java程序中我们时常会用到数据库中的数据或操作数据库中的数据,如果java程序没有和我们得数据库连接,就不能实现在java程序中直接操作数据库.使用jdbc就能将java程序和数据库连起来,此时我 ...

  2. Java程序中解决数据库超时与死锁

    Java程序中解决数据库超时与死锁 2011-06-07 11:09 佚名 帮考网 字号:T | T   Java程序中解决数据库超时与死锁,每个使用关系型数据库的程序都可能遇到数据死锁或不可用的情况 ...

  3. Linux上从Java程序中调用C函数

    原则上来说,"100%纯Java"的解决方法是最好的,但有些情况下必须使用本地方法.特别是在以下三种情况: 需要访问Java平台无法访问的系统特性和设备: 通过基准测试,发现Jav ...

  4. SQL函数TIMEDIFF在Java程序中使用报错的问题分析

    需求背景 (读者可略过)司机每天从早到晚都会去到不同的自动售货机上补货,而且补货次数和路线等也是因人而异,补货依据是由系统优化并指派.但是目前系统还无法实施有效指挥和优良的补货策略,司机的补货活动因此 ...

  5. java程序中的经常出现的的异常处理课后总结

    一.JDK中常见的异常情况 1.常见异常总结图 2.java中异常分类 Throwable类有两个直接子类: (1)Exception:出现的问题是可以被捕获的 (2)Error:系统错误,通常由JV ...

  6. 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案

    方案特点: 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案,简化软件开发流程,减少各应用系统相同模块的重复开发工作,提高系统稳定性和可靠性. 基于HTTP协议的开发接口 使用特点在网页 ...

  7. 如何在java程序中调用linux命令或者shell脚本

    转自:http://blog.sina.com.cn/s/blog_6433391301019bpn.html 在java程序中如何调用linux的命令?如何调用shell脚本呢? 这里不得不提到ja ...

  8. Java程序中调用Python脚本的方法

    在程序开发中,有时候需要Java程序中调用相关Python脚本,以下内容记录了先关步骤和可能出现问题的解决办法. 1.在Eclipse中新建Maven工程: 2.pom.xml文件中添加如下依赖包之后 ...

  9. 在java程序中访问windows有用户名和密码保护的共享目录

    在java程序中访问windows有用户名和密码保护的共享目录 Posted on 2015-11-20 14:03 云自无心水自闲 阅读(3744) 评论(0)  编辑  收藏 --> Jav ...

随机推荐

  1. XeLaTeX下如何以原大小显示PNG

    在XeLaTeX里直接使用\includegraphics{test.png}这样的命令引入PNG,可能会发现图片直接被缩放到占满文档宽度,这是因为PNG这种bitmap类型的图片里通常不会带上met ...

  2. Spark(三)RDD与广播变量、累加器

    一.RDD的概述 1.1 什么是RDD RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变.可分区.里面的元素可 ...

  3. day9--多线程与多进程

        线程:     什么是线程? 线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线 ...

  4. 2款适合HTML做音频和视频的插件

    Flowplayer-视频播放器 Flowplayer 是一个开源(GPL 3的)WEB视频播放器.您可以将该播放器嵌入您的网页中,如果您是开发人员,您还可以自由定制和配置播放器相关参数以达到您要的播 ...

  5. MyBatis-Plus 3.0.7.1

    1 .分页配置 <plugins> <plugin interceptor="com.baomidou.mybatisplus.plugins.PaginationInte ...

  6. 8-4 Fabled Rooks uva11134

    题意:你的任务是在n*n的棋盘上放 n 小于5000 个车 使得任意两个车不互相攻击 且第i个车在一个给定的矩形ri之内  给出该矩形左上角坐标和右下角坐标四个点  必须满足放车的位置在矩形内  边上 ...

  7. Linux下的文件与目录权限

    一.用户(User).群组(Group)和其他人(Others) linux是多用户多任务的操作系统,同一时刻可能会有多个用户登录系统,考虑到文件的安全性等问题,所以Linux下的文件都属于一个特定的 ...

  8. CentOS 使用命令设置代理

    全局的代理设置, vim /etc/profile 添加下面内容 http_proxy = http://username:password@yourproxy:8080/ ftp_proxy = h ...

  9. 推荐:这才是你寻寻觅觅想要的 Python 可视化神器

    Plotly Express 是一个新的高级 Python 可视化库:它是 Plotly.py 的高级封装,它为复杂的图表提供了一个简单的语法. 受 Seaborn 和 ggplot2 的启发,它专门 ...

  10. 详细介绍如何在Eclipse中使用SVN

    一.在Eclipse中下载安装Subclipse插件   1 打开eclipse,在Help菜单中找到marketPlace,点击进入. 2 在搜索框Find中输入subclipse,点击右边的Go按 ...