数据库derby
⑴ 什么工具可以连接derby数据库
Derby插件工具可以连接derby数据库
下载Eclipse的Derby插件,包括:derby_core_plugin derby_ui_plugin
解压缩并复制到eclipse目录下。重启Eclipse目录。鼠标选择项目,然后鼠标右键,选择Properties说明安装成功。
为项目增加Derby插件支持。选择Add Apache Derby nature。
然后启动derby数据库服务器。启动derby数据库客户端ij。通过ij创建并连接到服务器端:
connect 'jdbc:derby://localhost:1527/helloworld;create=true;username=test;password=test';
连接到名为helloworld的数据库
地址为:localhost:1527
create=true,如果不存在这个数据库,就在服务器端创建
username=test;password=test,用户名/密码为test,如果是新建数据库将新建用户和密码。
Derby的sql脚本:create.sql,内容:
create table books(
id int generated always as identity,
name varchar(32) not null,
PRICE DECIMAL(6,2),
constraint P_Key_1 primary key (id)
);
执行脚本的命令:
run 'create.sql';
⑵ derby中如何删除数据库
使用 TRUNCATE TABLE 删除所有行,若要删除表中的所有行,则 TRUNCATE TABLE 语句是一种快速、无日志记录的方法。
该语句总是比不带条件的 DELETE 语句要快,因为 DELETE 语句要记录对每行的删除操作,而 TRUNCATE TABLE 语句只记录整个数据页的释放。TRUNCATE TABLE 语句立即释放由该表的数据和索引占用的所有空间。所有索引的分发页也将释放。
与 DELETE 语句相同,使用 TRUNCATE TABLE 清空的表的定义,同其索引和其它相关的对象一起仍保留在数据库中。
必须使用 DROP TABLE 语句才能除去表的定义。
⑶ java操作derby数据库和操作sql数据库有什么区别
import java.sql.ResultSet; //都是导入一些下面需要用到的类
String ConnStr="jdbc:microsoft:sqlserver://WINJUE:1433;DatabaseName=library";//jdbc连接数据库url
public sqlServer() {
try {
Class.forName(DBDriver).newInstance(); //加载SQLServer驱动程序,DBDriver是你上面的代码;
conn=DriverManager.getConnection(ConnStr,"sa","sa"); //和数据库建立连接,ConnStr里面的://WINJUE:1433;DatabaseName=library 分别是主机地址:端口号;你自己建的数据库(database)
}
catch(SQLException e) { //捕获SQL异常
System.out.println(e.getMessage()); //要是出现异常,捕获到后,这句代码会把异常的信息(出错的原因之类的)打印出来。
}
catch(Exception e) { //捕获异常,这个是总的,所以不能和上面的顺序颠倒,先小到大,我连ORACLE和MYSQL,这个我通常不要,只须捕获SQL异常就OL
System.out.println(e.getMessage());
}
}
public Connection getConn(){ //获取连接方法
return conn;
}
public void insert(String sql) {//增删改
try {
Statement stm=conn.createStatement(); 调用conn下的方法,创建Statement对象
stm.executeUpdate(sql);//调用Statement下的方法执行SQL语句
System.out.println("操作成功");
}
catch(Exception e){
System.out.println(e.getMessage()); //如上
}
}
public ResultSet query(String sql){ //查询
try{
Statement stm=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stm.executeQuery(sql); //如上
}
catch(Exception e){
System.out.println(e.getMessage());
}
return rs;
}
public static void main(String args[]){
sqlServer conn=new sqlServer(); //创建sqlServer,就是你上面的类,以便调用里面的方法
ResultSet rs=conn.query("select * from Orders"); //调用query方法,执行SQL语句后,把结果保存到结果集里
//conn.insert("delete from BookInfo where BookName =" +"\'悟空传\'");
//conn.insert("insert into BookInfo (BookID,BookName,Author,KeyWord) values (14445678,'悟空传','今何在','孙悟空')");
try{
while(rs.next()){ //循环,判断结果集里的记录,一条条往下走,是否还有下一条记录,若是返回真,继续走
System.out.print(rs.getString("OrderID"));
//System.out.print(rs.getString("U_age"));
}
rs.close() ; //关闭结果集
}
catch (Exception e){
System.out.println(e.getMessage());
}
}
}
注:
TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至能进行特定定位,例如移至列表中的第四个记录或从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 相同,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。
⑷ 德比的Derby数据库
Derby数据库是一个纯用Java实现的内存数据库,属于Apache的一个开源项目。由于是用Java实现的,所以可以在任何平台上运行;另外一个特点是体积小,免安装,只需要几个小jar包就可以运行了。
Derby数据库入门
1,下载并安装Derby:
下载地址: ,下载最新版本。
我用的是10.5.3.0。
解压缩到任意文件夹,我的是:E:JavaJoyderby
2,配置环境变量:
建立DERBY_HOME,值:E:JavaJoyderbydb- derby-10.5.3.0-bindb-derby-10.5.3.0-bin
在Path加入:%DERBY_HOME%in
在CLASSPATH加入:%DERBY_HOME%lib derby.jar;%DERBY_HOME%libderbyclient.jar;%DERBY_HOME%libderbytools.jar;%DERBY_HOME%libderbynet.jar
3,测试看看Derby安装成功没有
开始—Run—CMD
运行 sysinfo
如果安装成功,将会看到相关信息,下面是截取的部分信息。
——— Derby 信息 ——–
JRE – JDBC: Java SE 6 – JDBC 4.0
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderby.jar] 10
.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbytools.ja
r] 10.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbynet.jar]
10.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbyclient.j
ar] 10.5.3.0 – (802917)
4,创建和使用数据库
打开命令行,进入想要放置数据库的目录,我的是:E:JavaJoy derbyDerby_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();
}
}
⑸ Derby是什么意思
Derby是一个Open source的产品,基于Apache License 2.0分发。
1、Apache Derby是一个完全用java编写的数据库,Derby是一个Open source的产品,基于Apache License 2.0分发。
Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做为单独的数据库服务器使用,也可以内嵌在应用程序中使用。Cognos 8 BI的Content Store默认就是使用的Derby数据库,可以在Cognos8的安装目录下看到一个叫derby10.1.2.1的目录,就是内嵌的10.1.2.1 版本的derby。
2、Apache Derby 项目的目标是构建一个完全用 Java 编程语言编写的、易于使用却适合大多数应用程序的开放源码数据库。可以想象,开发一个数据库并不简单,Apache Derby 数据库也不例外(因为它是个开放源码软件,所以您可以自行查看它)。但是 Derby 项目并不是从零开始的。回到 1996 年,一个叫做 Cloudscape, Inc 的新公司成立了,公司的目标是构建一个用 Java 语言编写的数据库服务器。公司的第一个发行版在一年之后推出,后来产品的名称变成 Cloudscape。1999 年,Cloudscape, Inc. 被大型数据库厂商 Informix Software, Inc. 收购。
⑹ 如何确定derby数据库的数据文件位置
创建新数据库
connect 'jdbc:derby:mydb;create=true';
ij> connect 'jdbc:derby:mydb;create=true';
将在当前目录下建立数据库目录 mydb;如果已经存在数据库 mydb,则提示:
警告 01J01:未创建数据库"mydb",而是建立到现有数据库的连接。
ij> connect 'jdbc:derby:mydb;create=true';
警告 01J01:未创建数据库"mydb",而是建立到现有数据库的连接。
⑺ 怎么连接已有的derby数据库
1.程序中创建数据库时,如果没有指定目录,会默认在项目的根目录下,生成一个以derby数据库名的目录,如:
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
System.out.println("Load the embedded driver");
Connection conn = null;
Properties props = new Properties();
props.put("user", "test");
props.put("password", "test");
// create and connect the database named helloDB
conn = DriverManager.getConnection(
"jdbc:derby:testDB;create=true", props);
System.out.println("create and connect to testDB");
conn.setAutoCommit(true);
其中:“jdbc:derby:testDB;create=true”,则在项目根目录下生成一个testDB目录。
2.下载安装coolsql后,操作如下:
1>新建一个书签,选择驱动
找到derby-10.9.1.0.jar(或其他版本jar),选择下面的:org.apache.derby.jdbc.EmbeddedDriver 。
2>下一步,输入用户名、密码,填写程序中赋值的:test,test;下面的数据库名字填写时,要注意,写系统的绝对路径,如:E:\eclipse3.7\wordspace_mvn\staticize\testDB(staticize为项目根目录),下面的url:jdbc:derby:E:\eclipse3.7\wordspace_mvn\staticize\testDB(自动填写)。
3>保持连接就可以了。