2014-07-17 73 views
0

我正在开发一个集成到NetBeans 7.2 IDE中的Java嵌入式数据库的Java桌面应用程序 该数据库是使用IDE创建的,目前它与前端分离。 现在我想将数据库连接到前端。当我尝试时,它给了我一个服务器找不到错误。以下是代码片段。无法连接到嵌入式Derby数据库

static final String host = "jdbc:derby:Wa_Poly"; 
static final String uName = "chief"; 
static final String uPass = "12345";  

用于连接的代码是:

/* Connecting to the database */ 
    Connection con = DriverManager.getConnection(host, uName, uPass); 
    Statement stmt2 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, 
    ResultSet.CONCUR_UPDATABLE); 
    String sql = "SELECT * FROM APP.ALUMNUS"; 
    ResultSet rs = stmt2.executeQuery(sql); 
    populateIndex(rs, Scrollable); 

这是给出的误差:

Jul 17, 2014 2:40:40 PM SearchEngine.SearchDB searchDatabase 
SEVERE: null 
java.sql.SQLException: Database 'Wa_Poly' not found. 
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.newEmbedSQLException(Unknown Source) 
at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) 
at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(Unknown Source) 
at org.apache.derby.impl.jdbc.EmbedConnection.handleDBNotFound(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:579) 
at java.sql.DriverManager.getConnection(DriverManager.java:221) 
at SearchEngine.Index.buildIndex(Index.java:118) 
at SearchEngine.SearchDB.searchDatabase(SearchDB.java:96) 
at wa_poly.MyJFrame.<init>(MyJFrame.java:47) 
at wa_poly.MyJFrame$5.run(MyJFrame.java:292) 
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) 
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:721) 
at java.awt.EventQueue.access$200(EventQueue.java:103) 
at java.awt.EventQueue$3.run(EventQueue.java:682) 
at java.awt.EventQueue$3.run(EventQueue.java:680) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) 
at java.awt.EventQueue.dispatchEvent(EventQueue.java:691) 
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) 
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163) 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139) 
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97) 

Caused by: java.sql.SQLException: Database 'Wa_Poly' not found. 
at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) 
at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown 

源) ... 32更

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException 
at SearchEngine.SearchDB.searchDatabase(SearchDB.java:105) 
at wa_poly.MyJFrame.<init>(MyJFrame.java:47) 
at wa_poly.MyJFrame$5.run(MyJFrame.java:292) 
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) 
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:721) 
at java.awt.EventQueue.access$200(EventQueue.java:103) 
at java.awt.EventQueue$3.run(EventQueue.java:682) 
at java.awt.EventQueue$3.run(EventQueue.java:680) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) 
at java.awt.EventQueue.dispatchEvent(EventQueue.java:691) 
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) 
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163) 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139) 
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97) 

任何解决问题的想法受欢迎。

回答

1

这是不够的:

的jdbc:德比:Wa_Poly

的嵌入式连接必须是这样的

的jdbc:德比:C:/文件UND Einstellungen/Administrator/.netbeans-derby/Wa_Poly

看看我的答案在这里
embedded Derby

编辑

右键单击服务 - > JavaDB之外 - >创建数据库

看看您的数据库文件夹。

enter image description here

+0

感谢您的回复。我检查了这个位置上的netbeans'C:\ Users \ Faisal \ .netbeans-derby'。但没有找到数据库。从属性窗口看到的数据库URL也是'jdbc:derby:Wa_​​Poly ;; create = true'。看起来像数据库是missing.Any建议。 – CodeAngel

+0

按照编辑的建议,但仍然得到错误。看起来NetBeans在不同的位置创建数据库。但不在.NetBeans文件夹中 – CodeAngel

+0

@CodeAngel:用Netbeans创建一个新的数据库。如何看,看上面。并搜索您的系统搜索该文件。 –

相关问题