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. Kafka(四)Kafka在zookeeper中的存储

    一 Kafka在zookeeper中存储结构图 二 分析 2.1 topic注册信息 /brokers/topics/[topic] : 存储某个topic的partitions所有分配信息 [zk: ...

  2. BZOJ囤题计划

    决定做一些题,学习jry,开坑(其实是填坑) 大概会刷的很慢,大家别鄙视我..欢迎鄙视 果然慢出翔了,还是填完吧.. 现在做了: 11 [2338][HNOI2011]数矩形 枚举对角线暴力水过,所有 ...

  3. 【Java】 参数的传递:值传递与引用传递讨论

    内容稍多,可直接看第4点的讨论结果 前言 在涉及到传递参数给方法时,容易出现一些参数传递错误的问题,这就涉及到了参数的传递问题,必须搞清楚:参数是如何传递到方法中的?一般来说,参数的传递可以分为两种: ...

  4. 14个你可能不知道的JavaScript调试技巧

    调试JS的时候,搜索一下这个标题

  5. Wannafly挑战赛9 A - 找一找

    链接:https://www.nowcoder.com/acm/contest/71/A来源:牛客网 题目描述 给定n个正整数,请找出其中有多少个数x满足:在这n个数中存在数y=kx,其中k为大于1的 ...

  6. 牛客练习赛1 B - 树

    链接:https://www.nowcoder.com/acm/contest/2/B来源:牛客网 题目描述 shy有一颗树,树有n个结点.有k种不同颜色的染料给树染色.一个染色方案是合法的,当且仅当 ...

  7. 磁盘清理-安全转移C盘中软件的缓存文件

    C盘飘红啦~~~ 安装软件时,默认会安装到C盘,并不会特意去改(尤其C盘是固态硬盘时).或者,根本就没有给你修改的机会. 可是啊,有些软件的缓存数据目录会比较大,实在太占C盘空间.想移出去,但又不想重 ...

  8. 深度学习基础系列(七)| Batch Normalization

    Batch Normalization(批量标准化,简称BN)是近些年来深度学习优化中一个重要的手段.BN能带来如下优点: 加速训练过程: 可以使用较大的学习率: 允许在深层网络中使用sigmoid这 ...

  9. OpenContrail 体系

    OpenContrail 体系架构文档 1  概述1.1  使用案例1.2  OpenContrail控制器和vRouter1.3  虚拟网络1.4     Overlay Networking1.5 ...

  10. ThinkPHP连接sqlserver,错误11001

    错误代码如下: :( 11001:[Microsoft][ODBC Driver 11 for SQL Server]TCP Provider: 不知道这样的主机. 0:[Microsoft][ODB ...