【问题标题】:Where does Eclipse store my Derby Database files which I create with Java?Eclipse 在哪里存储我使用 Java 创建的 Derby 数据库文件?
【发布时间】:2016-09-19 03:02:59
【问题描述】:

我已经搜索了一段时间,但找不到 Eclipse Neon 存储我使用 Derby 和 Java 创建的数据库文件的位置。较早的文档在上下文菜单中显示了“Apache Derby”选项,但对我来说并没有出现。

在较早的文档中,我还看到了有关 Derby 的 IJ SQL 接口的一些内容。我也想知道这个IJ界面在Eclipse Neon中是否仍然可用,以及如何打开它。

谢谢!

【问题讨论】:

  • 那么,您的程序如何连接到 Derby?
  • 我发现我之前没有正确创建数据库。一旦我发出 create=true 语句,数据库就会出现在我的项目文件夹中。不过我还是很想知道IJ接口是否还存在,除了写Java程序之外,是否可以通过Eclipse与数据库进行接口
  • 尝试切换到 Eclipse 中的“数据库开发”透视图。
  • 不幸的是,“数据库开发”没有出现在“打开透视图”窗口中

标签: java eclipse derby


【解决方案1】:

我不认为eclipse可以存储数据库,但是你可以在eclipse中编写你的Java代码来创建一个Derby数据库、表等,你也可以使用Derby数据库的ij-tool创建一个数据库。

如何创建 Derby 数据库以及创建的数据库保存在哪里的两种方式。

** 默认情况下,数据库会自动保存在您运行 startNetworkServer.bat 的位置。

从 java 代码创建数据库的示例(eclipse):

public class CreateDatabase {
    public static void main(String[] args) {

        String driverName = "org.apache.derby.jdbc.ClientDriver";

        // Creating all tables for database DDL for TABLES
        try {
        Class.forName(driverName);

        System.out.println("driver loaded");

        String url = "jdbc:derby://localhost:1527/MyDB;create=true";

        // ARM technology
        try (Connection con = DriverManager.getConnection(url);) {

            // get a connection to a specific database (inside ARM)
            System.out.println("connected to: " + con);
            Statement stmt = con.createStatement();

            // create a Statement for all tables

            String companyTable = "CREATE TABLE Company"
                    + "("
                    + "COMPANY_ID BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),"
                    + "COMPANY_NAME VARCHAR(20),"
                    + "COMPANY_PASSWORD VARCHAR(16),"
                    + "EMAIL VARCHAR(30),"
                    + "CONSTRAINT PRIME_COMPANY_ID PRIMARY KEY (COMPANY_ID)"
                    + ")";

            stmt.executeUpdate(companyTable);
            System.out.println("success: " + companyTable);

            String customerTable = "CREATE TABLE Customer"
                    + "("
                    + "CUSTOMER_ID BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),"
                    + "CUSTOMER_NAME VARCHAR(25),"
                    + "CUSTOMER_PASSWORD VARCHAR(16),"
                    + "CONSTRAINT PRIME_CUSTOMER_ID PRIMARY KEY (CUSTOMER_ID)"
                    + ")";
            stmt.executeUpdate(customerTable);
            System.out.println("success: " + customerTable);


            System.out.println("The database MyDB created successfully");

            }

            System.out.println("connection closed");

        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }

    }
}

从 (Derby) 的 ij-tool 创建数据库的示例: 转到 Derby 数据库的 bin 目录,然后 -
1.运行startNetworkServer.bat
2. 运行 ij.bat
3.在ij-tool中写connect 'jdbc:derby://localhost:1527/MyDB;create=true';
在第三步中,我们创建了一个名为 MyDB 的数据库,它出现在这个 - bin 目录中。

创建数据库后,您可以创建表... https://db.apache.org/derby/docs/10.7/ref/rrefsqlj24513.html#rrefsqlj24513

【讨论】:

    猜你喜欢
    • 2012-03-18
    • 1970-01-01
    • 2010-11-09
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-20
    • 2014-02-16
    相关资源
    最近更新 更多