Derby作为一个小型的纯java数据库,从JDK1.6开始集成在安装包中,当然你也可以从apache官网下载到最新版的,apache官网还提供了文档和源码,jdk并没有提供这些东西
目录为D:\Program Files\Java\jdk1.8.0_45\db
bin目录包含了启动关闭创建的一些工具文件
lib目录包含了一些jar包,如果需要使用内嵌模式的JDBC,需要导入derby.jar,如果需要使用网络模式的JDBC,需要导入derbyclient.jar
内嵌模式限制太多,只允许一个连接,下面介绍网络模式相关的内容
先设置环境变量
将D:\Program Files\Java\jdk1.8.0_45\db\bin加入path(注意是添加不是覆盖)
启动derby数据库
打开命令行,切换到某个目录,比如D:\Derbytest,然后执行startNetworkServer
D:
cd Derbytest
startNetworkServer
结果
Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。
C:\Users\test>D:
D:\>cd Derbytest
D:\Derbytest>startNetworkServer
Tue Jun 16 14:55:28 CST 2015 : 已使用基本服务器安全策略安装了 Security Manager。
Tue Jun 16 14:55:40 CST 2015 : Apache Derby 网络服务器 - 10.11.1.2 - (1629631)
已启动并准备接受端口 1527 上的连接
在D:\Derbytest下还会创建名为derby.log的日志文件
注意:你在那个目录启动Derby数据库,日志和数据库就会创建在那个目录
关闭数据库
新开一个命令行窗口,执行
stopNetworkServer
结果
Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。
C:\Users\test>stopNetworkServer
Tue Jun 16 15:02:12 CST 2015 : Apache Derby 网络服务器 - 10.11.1.2 - (1629631)
关闭
C:\Users\test>
下面的命令需要在ij工具下执行
启动ij
ij
退出ij
exit;
D:\>ij
ij 版本 10.11
ij> exit;
D:\>
创建数据库(以下命令需要首先启动网络模式startNetworkServer)
命令
CONNECT 'jdbc:derby://localhost:1527/seconddb;create=true';
这句话的作用是连接并创建数据库,seconddb是数据库名,true表示创建,false表示不创建
在数据库启动的目录可以看到刚创建的seconddb数据库(数据库在哪只与网络启动的目录有关,与后续命令的工作目录无关),在seconddb目录下还有log、seg0、tmp0目录
创建表
CREATE TABLE SECONDTABLE
(ID INT PRIMARY KEY,
NAME VARCHAR(14));
插入数据
INSERT INTO SECONDTABLE VALUES
(100,'ONE HUNDRED'),(200,'TWO HUNDRED'),(300,'THREE HUNDRED');
查询数据
SELECT * FROM SECONDTABLE;
JDBC连接参数
网络模式
jar包:derbyclient.jar
驱动名称:org.apache.derby.jdbc.ClientDriver
URL:jdbc:derby://localhost:1527/seconddb
用户名:APP(代码中可以不填,有些图形工具用户名不能为空就填这个,APP是数据库默认的用户/模式)
密码:APP(代码中可以不填,有些图形工具用户名不能为空就填这个)
内嵌模式
jar包:derby.jar
驱动名称:org.apache.derby.jdbc.EmbeddedDriver
URL:
jdbc:derby:D:\\Derbytest\\seconddb