为什么它说"java.sql.SQLException:无效的列名"

Vex*_*toR 8 java sql jdbc oracle10g

我正试图从DB获得结果

        String strCommand = "select TO_CHAR (realdate, 'YYYYMMDD'), PURCHASE_PRICE, SELLING_PRICE from CURRENCY_VI where RATE_NAME='EUR'";

        cs.setQueryTimeout(m_nTimeout);

        ResultSet rs = cs.executeQuery(strCommand);

        while (rs.next()){
            System.out.println("!!!\n\nDATE = " + rs.getString("realdate") + " PURCHASE_PRICE = " + rs.getString("PURCHASE_PRICE") + " SELLING_PRICE = " + rs.getString("SELLING_PRICE"));
        }
Run Code Online (Sandbox Code Playgroud)

它说rs.getString("realdate")- " java.sql.SQLException:无效的列名 ",为什么?

没有rs.getString("realdate")一切正常.

实际上,表格有这个专栏

  CREATE TABLE "GPB"."CURRENCY_VI" 
   (           "REALDATE" DATE, 
                "PURCHASE_PRICE" FLOAT(126), 
                "SELLING_PRICE " FLOAT(126), 
                "RATE_NAME" VARCHAR2(20 BYTE)
   )
Run Code Online (Sandbox Code Playgroud)

谢谢!

Nan*_*nne 11

我想你不是在选择realdate.您正在选择TO_CHAR (realdate, 'YYYYMMDD'),该列获得该名称.你可以这样做:

TO_CHAR (realdate, 'YYYYMMDD') as myrealdate
Run Code Online (Sandbox Code Playgroud)

并选择它.(当然`rs.getString("myrealdate"),不是realdate)