首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Intellij上的Derby

Intellij上的Derby
EN

Stack Overflow用户
提问于 2015-04-24 14:23:43
回答 1查看 5.3K关注 0票数 2

我想在IntelliJ IDEA上建立一个德比数据库。我找了很多这个问题,但找不到有用的答案。每次我试图连接到derby数据库时,都会得到以下错误。

有人能帮我解决这个问题吗?

代码语言:javascript
复制
java.sql.SQLException: Failed to create database 'C:/Users/Omar/IdeaProjects/untitled3', see the next exception for details.
  at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
  at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(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.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source)
  at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
  at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
  at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source)
  at com.intellij.database.remote.jdbc.impl.RemoteDriverImpl.connect(RemoteDriverImpl.java:27)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:483)
  at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
  at sun.rmi.transport.Transport$1.run(Transport.java:178)
  at sun.rmi.transport.Transport$1.run(Transport.java:175)
  at java.security.AccessController.doPrivileged(Native Method)
  at sun.rmi.transport.Transport.serviceCall(Transport.java:174)
  at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:557)
  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:812)
  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:671)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
  at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:276)
  at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:253)
  at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:162)
  at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:194)
  at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:148)
  at com.sun.proxy.$Proxy106.connect(Unknown Source)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:483)
  at com.intellij.execution.rmi.RemoteUtil.invokeRemote(RemoteUtil.java:124)
  at com.intellij.execution.rmi.RemoteUtil.access$100(RemoteUtil.java:36)
  at com.intellij.execution.rmi.RemoteUtil$RemoteInvocationHandler.invoke(RemoteUtil.java:227)
  at com.sun.proxy.$Proxy108.connect(Unknown Source)
  at com.intellij.database.dataSource.LocalDataSource.getConnection(LocalDataSource.java:240)
  at com.intellij.database.dataSource.LocalDataSource.getConnection(LocalDataSource.java:208)
  at com.intellij.database.view.DatabaseRefactoringHandler$3.run(DatabaseRefactoringHandler.java:95)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:621)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl$3.run(ProgressManagerImpl.java:194)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl.a(ProgressManagerImpl.java:281)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:233)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:181)
  at com.intellij.openapi.progress.impl.ProgressManagerImpl$9.run(ProgressManagerImpl.java:530)
  at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:406)
  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
  at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)
Caused by: java.lang.RuntimeException: ERROR XJ041: Failed to create database 'C:/Users/Omar/IdeaProjects/untitled3', see the next exception for details.
  at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
  at org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(Unknown Source)
  at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
  at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(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.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source)
  at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
  at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
  at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source)
  at com.intellij.database.remote.jdbc.impl.RemoteDriverImpl.connect(RemoteDriverImpl.java:27)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:483)
  at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
  at sun.rmi.transport.Transport$1.run(Transport.java:178)
  at sun.rmi.transport.Transport$1.run(Transport.java:175)
  at java.security.AccessController.doPrivileged(Native Method)
  at sun.rmi.transport.Transport.serviceCall(Transport.java:174)
  at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:557)
  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:812)
  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:671)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: ERROR XBM0J: Directory C:\Users\Omar\IdeaProjects\untitled3 already exists.
  at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
  at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
  at org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
  at org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(Unknown Source)
  at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source)
  at org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown Source)
  at org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(Unknown Source)
  at org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown Source)
  ... 22 more
EN

回答 1

Stack Overflow用户

发布于 2015-04-24 15:05:34

我将假设您希望创建一个IntelliJ数据源。

这些步骤如下:

  1. 转到目录(例如cd c:\derby\bin)。
  2. 启动Apache (例如startNetworkServer)
  3. 开放IntelliJ理念项目
  4. 转到数据库选项卡
  5. 单击新数据源的+图标。
  6. 选择Derby Remote
  7. 填好表格。这就是我是如何做到的一个例子:
代码语言:javascript
复制
- **Host**: localhost
- **Port**: 1527
- **Database**: demo;create=true
- **User**: admin
- **Password**: admin

在我的例子中,URL看起来如下:

jdbc:derby://localhost:1527/demo;create=true

注意"create=true“参数的用法。这一点很重要,因为否则Derby不会自动创建数据库,这可能是导致您的问题的原因。

点击Apply按钮,然后单击按钮,就这样了。Derby将创建数据库并连接到数据库。

数据库将放置在DERBY_HOME/bin目录中,因为这是我们启动Derby服务器的地方。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29850005

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档