首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从JavaDB读取数据

如何从JavaDB读取数据
EN

Stack Overflow用户
提问于 2019-12-26 19:30:26
回答 2查看 111关注 0票数 0

我尝试创建一个简单的Java应用程序,它将从JavaDB读取数据。其目的是从数据库中获取第一个"UNAME“变量,并将其分配给"user”变量并打印出来。

代码语言:javascript
复制
package giris;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author Ibrahim
 */
public class Giris {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        String user = "";

        System.out.println("hello world");
        try 
        { 
            System.out.println("connecting to database");    
            Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/deneme", "ASD", "asd");
            System.out.println("succesfully connected");
            PreparedStatement pr = con.prepareStatement("select UNAME from ASD.Table1");

            ResultSet rs = pr.executeQuery();

            while(rs.next())
            {

            user = rs.getString(0);
            }
        }
        catch(Exception e)
        {
            System.err.println("error");
        }
        System.out.println(user);
    }

}

我的DB就是这样的

但是,当我运行应用程序时,输出如下所示:

代码语言:javascript
复制
run:
hello world
connecting to database

error
BUILD SUCCESSFUL (total time: 0 seconds)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-26 19:48:25

缺少加载驱动程序类逻辑,请添加以下内容

代码语言:javascript
复制
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();

将这个derbyclient-10.2.2.0.jar添加到类路径

希望它能帮到你

票数 0
EN

Stack Overflow用户

发布于 2019-12-26 19:45:38

你正确地使用了它,可能是错误的DB细节。

顺便说一句,永远不要像那样使用catch块,您丢失了存储在e中的信息。

有关更多信息,请使用下面的代码:

代码语言:javascript
复制
public static void yourMethod()
{
    try
    {
        // Some code...
    }
    catch(Exception e)
    {
        logError("Got exception during...", e);
    }
}

public static void logError(String message, Throwable e)
{
    StringWriter sw = new StringWriter();
    PrintWriter pw = new PrintWriter(sw);
    e.printStackTrace(pw);

    logError(message + "\n" + sw.toString());
}

public static void logError(String message)
{
    System.err.println("[ERROR] " + message);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59492655

复制
相关文章

相似问题

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