学习使用jdk1.7中内置数据库Derby(二)

继续上文"学习使用jdk1.7中内置数据库Derby(一)"[url]http://128kj.iteye.com/blog/1725848[/url]
Derby提供了三个工具脚本:1)sysinfo;2)ij;3)dblook。运行这三个脚本时,如果你没有设置classpath环境变量,这些脚本会自动进行设置。

1) sysinfo
使用sysinfo可以显示你的Java环境信息和Derby的版本信息。使用方法就是在命令行下直接输入:
sysinfo.bat

2) dblook
使用dblook可以将全部或者部分数据库的DDL定义导出到控制台或者文件中。使用方法:
dblook.bat –d <sourceDBUrl> [Options]

例一:
D:\db>dblook -d 'jdbc:derby:d:\db\testdb';
-- 时间戳记:2012-11-15 19:23:29.875
-- 源数据库为:d:\db\testdb
-- 连接 URL 为:jdbc:derby:d:\db\testdb
-- appendLogs: false

-- ----------------------------------------------
-- 表的 DDL 语句
-- ----------------------------------------------

CREATE TABLE "APP"."USER_INFO" ("ID" INTEGER NOT NULL, "NAME" VARCHAR(10) NOT NULL);

dblook 的相关参数介绍:

-d <sourceDBUrl>: 指定数据库连接的完整 URL
-z <schemaName> :以指定生成 DDL 应该受限制的模式。只有具有该模式的数据库对象才能生成其DDL。
-t <tableOne> <tableTwo> ...: 表名 , 可以列出多个,中间以空格分隔
-append: 以防止覆盖输出文件,生成的 dblook 的日志为追加模式。
-verbose 除了将错误消息打印到日志文件外,还将其打印到控制台。如果没有指定此选项,错误将只打印到日志文件。
-o <filename> 指定将生成的 DDL 写入其中的文件名。 如果没有指定,缺省值是控制台。

例二:
D:\db>dblook -d jdbc:derby:d:\db\testdb -t user_info -o f.txt -verbose
输出将发送到文件 f.txt

3) ij
使用ij工具来进行数据库交互,先用连接命令进行连接,连接之后的操作就相当于一般的数据库控制台一样了。可执行SQL脚本,如查询、增删改、创建表等等。

注意要使用ij工具,你必须把下面两个jar文件放到你系统的CLASSPATH中,

%JAVA_HOME%\db\lib\derby.jar
%JAVA_HOME%\db\lib\derbytools.jar

其中,derby.jar包含JDBC驱动,derbytools.jar是ij工具本身。
例三:
D:\db>ij
ij 版本 10.8
ij> connect 'jdbc:derby:d:\db\testdb';
ij> show tables;
[img]http://dl.iteye.com/upload/attachment/0076/6789/4510e15e-edc5-3a02-8f08-4a9371fd3d2a.gif[/img]

已选择 23 行
ij> select * from user_info;
ID |NAME
----------------------
1 |hermit
2 |test

已选择 2 行
ij>


例四:通过如下命令创建数据库,并与数据库创建连接,插入,查询:
D:\db>ij
ij 版本 10.8
ij> connect 'jdbc:derby:firstdb;create=true';
ij> create table firsttable(id int primary key,name varchar(20));
已插入/更新/删除 0 行
ij> insert into firsttable values(1,'happe');
已插入/更新/删除 1 行
ij> select * from firsttable;
ID |NAME
--------------------------------
1 |happe

已选择 1 行
ij> exit;
D:\db>

例五:也可以通过run命令来执行sql文件:
run 'd:\db\mydb.sql';

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

你可以在当前你命令行下所在的目录中找到一个derby.log的日志文件,derby在其中记录的数据库启动、关闭的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值