java - 无法创建嵌入式derby Java

原文 标签 java derby embedding

我以JDBC模式创建了嵌入式derby,但是当我尝试在java类中访问它时,出现了以下错误:

java.sql.SQLException: Failed to create database 'myDB', see the next exception for details.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown Source)
    at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown Source)
    at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
    at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:207)
    at embededderby.Main.createConnection(Main.java:42)
    at embededderby.Main.main(Main.java:30)

最佳答案

首先,

配置文件夹以使用以下命令创建数据库:

System.setProperty("derby.system.home", System.getProperty("user.home")
            + "/myDbFolder");

接着

使用属性创建数据库

driverClassName =“org.apache.derby.jdbc.EmbeddedDriver”

url =“jdbc:derby:SolofutbolParaguayDB; create = true” //创建新的Db


 public HelloWorld() {

    try {
        setDBSystemDir();
        Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
        Connection dbConnection = null;
        String strUrl = "jdbc:derby:SolofutbolParaguay;create=true";

        try {
            dbConnection = DriverManager.getConnection(strUrl);
            System.out.println("connection created");
            createTable(dbConnection);
            insertRecord(dbConnection);
            listRecord(dbConnection);
            System.out.println("connection close");
        } catch (SQLException sqle) {
            sqle.printStackTrace();
        }

    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

private void setDBSystemDir() {
    // Decide on the db system directory: <userhome>/.addressbook/
    System.setProperty("derby.system.home", "/Users/myuser/futbol

关于java - 无法创建嵌入式derby Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4999106/

相关文章:

java - 将两个不同的数据库与相同的 hibernate 映射文件一起使用

tensorflow - Tensorflow 嵌入层内部的网络结构是什么?

javascript - 在Javascript中嵌入coffeescript…?

java - 将外部文本数据索引到GraphDB中的Lucene索引

java - Spring:使用@Resource 注入(inject)具体类是否需要CGLIB

java - 将 LWJGL java 应用程序放在 jpanel 或 Canvas 中

apache-spark - 如何从 Spark Shell 中删除 derby.log、metastore_db

java - 声称我的表名实际上是 Java Derby (SQL) 中的一列的错误消息

ruby - 将 C 初始化结构传递给嵌入式 Ruby 解释器

java - 字符串未使用SharedPreferences存储