您的位置:首页 > 编程语言 > Java开发

在NetBeans IDE 中使用Java DB数据库

2008-03-11 15:18 197 查看
本文档介绍如何在 NetBeans IDE 中快速建立与 Sun 的 Java DB(该数据库基于 Apache Derby 数据库)的连接。建立连接后,您可以容易地在 IDE 中使用这个数据库,可以创建表、用数据填充表、运行 SQL 查询等等。  Java DB 数据库是 Sun 支持的 Apache Derby 的分销版。Java DB 是完全事务型、安全、基于标准的数据库服务器,它全部采用 Java 编写并完全支持 SQL、JDBC API 和 Java EE 技术。Java DB 数据库与 Sun Java System Application Server 9.0, Platform Edition 捆绑在一起, 预期持续时间:25 分钟 本教程将介绍以下主题:l          获得软件 l          配置数据库 l          在 NetBeans IDE 中注册数据库 l          启动服务器并创建数据库 l          连接数据库 l          创建表 l          添加表数据 l          使用 SQL 脚本 l          从其他数据库中重新创建表 l          下一步  

获得软件

  开始本教程之前,您必须确保在计算机上安装了以下软件:1.       NetBeans IDE 5.5(下载)2.       Java SE Development Kit (JDK™) 版本 5.0 或更高版本(下载)3.       Java DB(下载注意:如果下载的是 JDK 6,则安装中将包含 Java DB 数据库。您还可以下载 Sun Java System Application Server,它包含 Java DB。当在 NetBeans IDE 中注册该应用程序服务器时,将自动注册 Java DB。另外,还可以下载 Java EE 5 Tools Bundle,它既包含 NetBeans IDE,也包含 Sun Java 系统应用程序服务器。 

配置数据库

  如果在 NetBeans IDE 中注册了 Sun Java 系统应用程序服务器,那么 Java DB 将被自动注册。您可以直接跳到启动服务器并创建数据库部分。如果下载了该应用程序服务器,但在 NetBeans IDE 中注册该服务器时需要帮助,请搜索 IDE 帮助 (F1) 查找关于注册 Sun Java 系统应用程序服务器的实例。如果只下载了 Java DB,则执行以下操作:1.       运行此自解压文件。在与该文件相同的位置创建一个名为“javadb”的文件夹。如果只下载了 Java DB 并且想将该数据库服务器放在与它解压缩的位置不同的位置,您应该立即将它重新定位。2.       在 Java DB 根目录 (javadb) 中,创建一个名为“database”的新文件夹。我们将在以后使用该文件夹包含该数据库服务器的各个实例。请注意,该文件夹不需要位于数据库的根目录中,但就本教程而言,这样做会比较好。  在进行下一步之前,让我们简略地查看一下 Java DB 的子目录:l          demo 子目录包含演示程序。l          bin 子目录包含用于执行实用程序和设置环境的脚本。l          javadoc 子目录包含从源代码注释中生成的 API 文档。l          docs 子目录包含 Java DB 文档。l          lib 子目录包含 Java DB jar 文件。l          frameworks 子目录包含用于执行实用程序和设置环境的较旧样式的脚本。一般,提供这些脚本是为了向后兼容。在以后的发行版中,它们可能被废弃,以支持使用 bin 目录中的脚本。

在 NetBeans IDE 中注册数据库

  现在我们已经配置了数据库,下面让我们在 IDE 中注册它:1.       在 NetBeans IDE 中,从主菜单中选择 Tools > Options。单击 Options 窗口左下角的 Advanced Options 按钮。将打开 Advanced Options 窗口。2.       在 Advanced Options 窗口中,展开 IDE Configuration > Server and External Tools Settings 节点。选择 Java DB Database 节点。3.       现在,在 Advanced Options 窗口的右窗格中的 Properties 下,单击 Java DB Location 的省略号 ( ) 按钮并将路径设置为您解压缩该数据库归档的位置(例如,C:/javadb)。4.       对于 Database Location,将路径设置为新创建的“database”文件夹。下面的屏幕截图显示了 Java DB 服务器的设置示例。完成之后,单击 Close。

 

启动服务器并创建数据库

  使用 IDE 注册数据库之后,将在主菜单的 Tools 下出现 Java DB Database 菜单项。使用该菜单项,可以轻松启动和停止该数据库服务器,以及创建新的数据库。要启动该数据库服务器,请执行以下操作:1.       选择 Tools > Java DB Database > Start Java DB Server。您将在 Output 窗口中看到以下内容,表示服务器已经启动:
2.       现在,选择 Tools > Java DB Database > Create Java DB Database...。将打开 Create Java DB Database 对话框。3.       在 Database Name 文本字段中,键入 contact_database。另外将 User Name 和 Password 设置为 nbuser。注意,根据前面在 NetBeans IDE 中注册数据库的第 3 步中输入的内容设置 Database Location。如果使用的 Java DB 来自应用程序服务器,则 Database Location 将被设置为其他位置(例如,${HOME}/.netbeans-derby)。单击 OK。例如,

连接数据库

  到目前为止,我们已经成功地启动了数据库服务器,并在 NetBeans IDE 中创建了数据库。但是,我们仍然需要连接新的数据库,然后才能在 IDE 中使用该数据库。要连接 contact_database 数据库,请执行以下操作:1.       切换到 Runtime 窗口 (Ctrl+5) 并展开 Databases 节点以便看到新数据库:

右键单击该数据库连接节点 (jdbc:derby://localhost:1527/contact_database[nbuser on NBUSER]),然后选择 Connect...。2.       在显示的 Connect 对话框中,输入密码,然后单击 OK。注意,该连接节点现在显示完整的 ( ),表示连接已成功。 

创建表

  很显然,由于我们刚刚创建了 contact_database,因此它还不包含任何表或数据。在 NetBeans IDE 中,您可以通过使用 Create Table 对话框或输入 SQL 查询并从 SQL 编辑器中直接运行它来添加数据库表。下面让我们研究一下这两种方法:

使用 Create Table 对话框:

1.       展开 contact_database 连接节点,注意有三个子文件夹:Tables、Views 和 Procedures。右键单击 Tables 节点,然后选择 Create Table...。将打开 Create Table 对话框。2.       在 Table Name 文本字段中,键入 CONTACTS。3.       在显示的第一行中,选择 Key 复选框。为您的表指定主要关键字。所有位于关系数据库中的表都必须包含一个主要关键字。请注意,当您选择 Key 复选框时,Index 和 Unique 复选框也将自动选中,而 Null 复选框将被取消选择。这是因为主要关键字用来标识数据库中的唯一行,默认情况下它们形成表索引。由于所有行都需要标识,因此主要关键字不能包含 Null 值。4.       在 Column Name 中,输入 ID。为 Data Type,从下拉列表中选择 INTEGER。然后单击 Add Column 按钮。5.       现在重复此过程,按下表中所示指定字段:
Key Index Null Unique Column name Data type Size
[checked] [checked]   [checked] ID INTEGER 0
    [checked]   FIRST_NAME VARCHAR 50
    [checked]   LAST_NAME VARCHAR 50
    [checked]   TITLE VARCHAR 50
    [checked]   NICKNAME VARCHAR 50
    [checked]   DISPLAY_FORMAT SMALLINT 0
    [checked]   MAIL_FORMAT SMALLINT 0
    [checked]   EMAIL_ADDRESS VARCHAR 500
6.       现在,您大体上已经创建了一个名为 CONTACTS 的表,该表中的每个联系人记录包含以下数据:l          First Name l          Last Name l          Title l          Nickname l          Display Format l          Mail Format l          Email Address
  确保 Create Table 对话框包含的说明与上面显示的内容相同,然后单击 OK。该 IDE 将在数据库中生成 CONTACTS 表,您将看到在 Runtime 窗口中的 Tables 下显示一个新的 CONTACTS 表节点 ( )。在该表节点下面是我们创建的列(字段),以主要关键字 ( ) 开头:

使用 SQL 编辑器:

1.       右键单击 contact_database 连接节点或其下面的 Tables 节点,然后选择 Execute Command...。将在位于主窗口中的 SQL 编辑器中打开一个空白的画布。2.       在 SQL 编辑器中,键入以下查询。这就是您要创建的 CONTACTS 表的表定义:
CREATE TABLE "CONTACTS" (
    "ID" INTEGER not null primary key,
    "FIRST_NAME" VARCHAR(50),
    "LAST_NAME" VARCHAR(50),
    "TITLE" VARCHAR(50),
    "NICKNAME" VARCHAR(50),
    "DISPLAY_FORMAT" SMALLINT,
    "MAIL_FORMAT" SMALLINT,
    "EMAIL_ADDRESS" VARCHAR(500)
);

注意:在 SQL 编辑器中形成的查询采用结构化查询语言 (Structured Query Language,SQL) 进行解析。SQL 坚持严格的语法规则,当您在 IDE 编辑器中工作时应该熟悉这些规则。运行查询时,会在 Output 窗口中生成来自 SQL 引擎的反馈,该反馈表示执行是否成功。3.       单击顶部任务栏中的 Run SQL ( ) 按钮(或者按 Ctrl+Shift+E)即可执行查询。应该会在 Output 窗口中收到以下消息:

4.       要验证更改,请再次右键单击 Runtime 窗口中的 contact_database 节点,然后选择 Refresh。这会将 Runtime UI 组件更新为指定数据库的当前状态。当在 NetBeans IDE 中从 SQL 编辑器中运行查询时这是必需的一步。注意,新的 CONTACTS 表节点 ( ) 现在显示在 Runtime 窗口的 Tables 下。

添加表数据

  我们已经在 contact_database 中创建了第一个表,现在可以用数据填充该表。为了向 CONTACTS 表中添加完整的记录(行),我们需要为表中存在的每个字段提供一个值。首先打开 SQL 编辑器,然后输入一个简单的查询来添加联系人记录:1.       从 Runtime 窗口的 CONTACTS 表节点中选择 Execute Command...。将在位于主窗口中的 SQL 编辑器中打开一个空白的画布。2.       在 SQL 编辑器中,键入以下查询:
insert into "NBUSER"."CONTACTS" values (1,'Monty','Python','Mr.','Bruiser',3,10,'monty.python@flyingcircus.com')
               
3.       单击顶部任务栏中的 Run SQL ( ) 按钮(或者按 Ctrl+Shift+E)即可执行查询。您应该会在 Output 窗口中收到一条表示该查询已成功执行的消息。4.       要验证新的记录是否已经添加到 CONTACTS 表中,请在 Runtime 窗口中,右键单击 CONTACTS 表节点,然后选择 View Data。SQL 编辑器将再次在主窗口中打开。当选择 View Data 时,将自动在 SQL 编辑器的上部窗格中生成从表中选择所有数据的查询。语句的结果显示在 SQL 编辑器的下部窗格中。在我们的示例中,CONTACTS 表显示在下部窗格中。注意,已经添加了一个新行,其数据来自于我们刚刚从 SQL 查询中得到的数据:

使用 SQL 脚本

  从外部 SQL 脚本中发出命令通常是管理数据库的常用方法。您可能已经在其他位置创建了 SQL 脚本,并且想将其导入到 NetBeans IDE 中以便在指定的数据库上运行该脚本。出于演示目的,请下载 friends.sql 并将其保存到计算机上的某个位置中。该脚本创建一个名为 Friends 的新表并用数据填充该表。要在我们的 contact_database 上运行该脚本,请执行以下操作:1.       从 DIE 的主菜单中选择 File > Open File... (Ctrl+O)。在文件浏览器中,导航到您以前保存 friends.sql 的位置,然后单击 Open。该脚本将自动在 SQL 编辑器中打开。2.       确保从编辑器顶部工具栏中的 Connection 下拉框中选择了您与 contact_database 的连接:
3.       单击 SQL 编辑器任务栏中的 Run SQL ( ) 按钮。该脚本将在选定的数据库上执行,并且会在 Output 窗口中生成所有反馈。4.       要验证更改,请右键单击 Runtime 窗口中的 contact_database 连接节点,然后选择 Refresh。这会将 Runtime UI 组件更新为指定数据库的当前状态。注意,现在 SQL 脚本中的 Friends 表显示为 Runtime 窗口中 contact_database 下的一个表节点。5.       要查看新表中包含的数据,请从表的右键单击菜单中选择 View Data...,上所述。通过这种方式,您可以将表中的数据与 SQL 脚本中包含的数据相比较以查看它们是否匹配。

从其他数据库中重新创建表

  如果有个表来自于另一个数据库,而您希望在 NetBeans IDE 中,您正在使用的数据库里快速重新创建该表,则 IDE 为此提供了一个便利的工具。首先您需要在 IDE 中注册第二个数据库,步骤与本教程开始部分所述的步骤相同。为了便于演示,我们将使用您下载 Sun Java System Application Server 时与 Java DB 捆绑在一起的 sample 数据库。这个过程本质上分为两步:首先,您必须获得选定表的表定义,然后便可以在您选择的数据库中重新创建该表。

获得表定义:

1.       通过右键单击 Runtime 窗口中的连接节点,然后选择 Connect...(密码为 app)连接到 sample 数据库。2.       展开 Tables 节点。右键单击 CUSTOMER 表,然后选择 Grab Structure...:

3.       在打开的 Grab Table 对话框中,指定计算机上的某个位置以保存将要创建的 grab 文件。单击 Save。grab 文件记录选定表的表定义。

重新创建表:

1.       在 Runtime 窗口中,右键单击 contact_database 中的 Tables 节点,然后选择 Recreate Table...。2.       在打开的 Recreate Table 对话框中,导航到前面保存 CUSTOMER grab 文件的位置,然后单击 Open。将打开 Name the Table 对话框:

此时,您可以更改表名称或编辑表定义。就本例而言,只需单击 OK 以创建表,您将会看到在 Runtime 窗口的 contact_database 连接节点下面的 Tables 下显示了一个新的 CUSTOMER 表节点:

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: