try { 
 Connection con;
 con = DriverManager.getConnection("jdbc:derby:C:/Users/family/.netbeans-derby/MyDatabase;create=true");
 System.out.println("Id");
 PreparedStatement stmt;
 stmt = con.prepareStatement("Select * from PERSON;");
 ResultSet rs=stmt.executeQuery();
 while(rs.next())
            {
              String id=rs.getString(String.valueOf("ID"));
              String name=rs.getString("NAME");
              System.out.println(id);
              System.out.println(name);
            }
        }catch (SQLException err) {
           System.out.println(err.getMessage()+ "No matching word in database");
        }嗨,我是爪哇德比的新手。我已经阅读了关于在netbeans中连接derby数据库(嵌入式)的论坛,但我仍然没有找到解决方案。我已经在库中添加了derby.jar和derbyclient.jar,但错误仍然是这样显示的,有人能帮我修复这个错误吗:
错误代码:
无法使用类加载器sun.misc.Launcher$AppClassLoader@1a7bf11启动数据库'C:/Users/family/.netbeans-derby/fine‘,请参阅数据库中匹配单词的details.No的下一个异常
希望有人能回复我的问题,谢谢..!!
发布于 2013-12-12 08:47:01
首先,我相信你混淆了prepareStatement和Statment的用法。看一下这个链接,你就会得到一些如何了解更多的想法。Difference between Statement and PreparedStatement
其次,对于SQL查询,您不能使用prepareStatment。如果我理解了您想要做什么,那么您的SQL查询应该是这样的。
String sql = "Select * from PERSON WHERE Id=?";
关于你的SQL查询的另一个问题是没有提到你使用了什么方法。因为APP.PERSON在这里没有意义,所以它应该类似于APP.PERSON
请尝试阅读本教程,了解如何在JDBC http://www.mkyong.com/jdbc/jdbc-preparedstatement-example-batch-update/中使用perparStatment。
第三,我有一个关于我应该在哪里创建我的数据库的问题,所以我建议你在项目文件夹旁边创建它。提示:请在getConncetion中使用相对路径
最后,你需要进行更多的研究,因为你把一切都搞错了。祝好运
https://stackoverflow.com/questions/20532225
复制相似问题