【问题标题】:Getting values from table in DB2从 DB2 中的表中获取值
【发布时间】:2016-12-06 00:46:42
【问题描述】:

我想使用 db2 从表中获取值并打印出结果。

这是我尝试使用的代码:

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

public class connection {
    public static void main(String[] argv) {
        try {
            Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
        }
        catch (ClassNotFoundException e) {
            System.out.println("Please include Classpath  Where your DB2 Driver is located");
            e.printStackTrace();
            return;
        }
        System.out.println("DB2 driver is loaded successfully");
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rset=null;
        boolean found=false;
        try {
            conn = DriverManager.getConnection("jdbc:db2:sabarish","db2admin","Murugasaranam");
            if (conn != null)
            {
                System.out.println("DB2 Database Connected");
            }
            else
            {
                System.out.println("Db2 connection Failed ");
            }
            pstmt=conn.prepareStatement("SELECT * FROM SYSCAT.COLUMNS WHERE TABSCHEMA= 'STD' AND TABNAME= 'inventory'");
            rset=pstmt.executeQuery();
            if(rset!=null)
            {

                while(rset.next())
                {
                    found=true;
                    System.out.println("Class Code: "+rset.getString("clcode"));
                    System.out.println("Name: "+rset.getString("name"));
                }
            }
            if (found ==false)
            {
                System.out.println("No Information Found");
            }
        } catch (SQLException e) {
            System.out.println("DB2 Database connection Failed");
            e.printStackTrace();
            return;
        }
    }

}

它只打印列名。除了列名,我可以使用什么查询语句来获取结果? db2 select * from store.inventory 似乎也没有效果。

【问题讨论】:

  • 无论如何我都不是 DB2 专家,但是为什么您在 JDBC 查询中省略了数据库名称?
  • 有什么例外?究竟是什么问题?不工作是什么意思?
  • @TimBiegeleisen 我在网上看到的示例遵循这种格式。我自己对此很陌生。我今天才开始使用 DB2。
  • @javaguy 它不会打印出这些值。它只是给出列名。
  • 上面的代码只是一个例子。我只关注查询语句。我试图找出如何使用 db2 查询类似于该示例的数据库。 'db2 select * from store.inventory' 和 `SELECT * FROM SYSCAT.COLUMNS WHERE TABSSCHEMA= 'STD' AND TABNAME= 'inventory' 是主要关注点。

标签: java database jdbc db2 db2-400


【解决方案1】:

试试select * from STD.inventory

【讨论】:

    猜你喜欢
    • 2011-11-08
    • 2021-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多