【问题标题】:method for printing entire database column打印整个数据库列的方法
【发布时间】:2014-01-03 21:52:09
【问题描述】:

我有一个正常工作的数据库应用程序,它只是吐出整个“名称”列

String sql = "SELECT Name FROM my_list;";   
ResultSet infoDump = stmt.executeQuery(sql);
String actID = null;
while (infoDump.next()){
    actID = infoDump.getString("Name");
    System.out.println(actID);
}

我希望能够将它封装在一个不错的小函数中

printTheNames(sqlQuery)
{
    ResultSet infoDump = stmt.executeQuery(sqlQuery);
    String actID = null;
    while (infoDump.next()){
        actID = infoDump.getString("Name");
        System.out.println(actID);
    }
}
printTheNames("SELECT Name FROM my_list;"); 

我不确定要使用什么语法,因为当我做任何接近此的事情时,它会给我带来各种错误。我敢肯定这很简单,但是我能在任何地方找到一个简单的例子吗?

【问题讨论】:

  • 似乎缺少函数声明的部分。将public void 添加到printTheNames(sqlQuery) 应该可以正常工作。
  • 只需使用 ArrayList。在函数中填充它并返回它。
  • 如果您遇到错误,那么您应该在问题中包含这些错误。

标签: java sql eclipse jdbc


【解决方案1】:

你的方法签名是错误的,应该是

public void printTheNames(String sqlQuery)
{
    ResultSet infoDump = stmt.executeQuery(sqlQuery);
    String actID = null;
    while (infoDump.next()){
        actID = infoDump.getString("Name");
        System.out.println(actID);
    }
}

然后像现在这样打电话。

printTheNames("SELECT Name FROM my_list;"); 

假设您在同一个类中调用该函数,否则您需要一个实例来调用该方法。

【讨论】:

  • 这里的一个问题是该方法需要 sqlQuery 参数将数据库字段名称嵌入其中。我建议传入第二个字符串,将其命名为字段,然后在 getString 调用中使用它。
  • @Krazick 是的,但 OP 基本上面临语法问题。添加额外的参数很容易使方法通用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-24
  • 2019-06-06
  • 2014-07-10
  • 2010-09-26
相关资源
最近更新 更多