| 24小時(shí)熱門(mén)版塊排行榜 |
| 5 | 1/1 | 返回列表 |
| 查看: 1693 | 回復(fù): 9 | ||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | ||
[求助]
大家好,我現(xiàn)在遇到了一個(gè)問(wèn)題,請(qǐng)大家?guī)蛶兔Γ? 已有1人參與
|
||
|
package Water; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; //import java.util.Scanner; public class QueryDesc { public static List<UserVo> showUser() throws ClassNotFoundException { Connection conn = null; Statement stmt = null; ResultSet rs = null; List<UserVo> list = new ArrayList<UserVo>();//聲明一個(gè)List集合,用于存放查詢出的數(shù)據(jù) try { // String Str=" SELECT '%s' FROM MONTHAVERAGE "; // String.format(Str,M); // 格式化字符串 conn = JDBC_Connection.getConnection();// 連接數(shù)據(jù)庫(kù) stmt = conn.createStatement();// 建立Statement對(duì)象; rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE " ); while(rs.next())// 結(jié)果集存在,則進(jìn)行循環(huán)遍歷 { UserVo userVo = new UserVo(); userVo.setDD(rs.getInt("一" );list.add(userVo); } }catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ JDBC_Connection.free(rs, conn, stmt);// 關(guān)閉連接 } return list; } 大家好,我想知道怎樣將 rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE " );這一句中所選的那個(gè)列名“一”變成變量,在以上的程序中我要加入一段什么樣的代碼來(lái)實(shí)現(xiàn)呢?謝謝大家! |
木蟲(chóng) (正式寫(xiě)手)

至尊木蟲(chóng) (著名寫(xiě)手)
驃騎將軍

|
您好,麻煩您了,我把程序按您的提示改了之后如下: public class QueryDesc { public static List<UserVo> showUser(String M) throws ClassNotFoundException { Connection conn = null; Statement stmt = null; ResultSet rs = null; List<UserVo> list = new ArrayList<UserVo>();//聲明一個(gè)List集合,用于存放查詢出的數(shù)據(jù) try { // String Str=" SELECT '%s' FROM MONTHAVERAGE "; // String.format(Str,M); // 格式化字符串 conn = JDBC_Connection.getConnection();// 連接數(shù)據(jù)庫(kù) stmt = conn.createStatement();// 建立Statement對(duì)象; String name="M"; String sql_str = "SELECT "+name+" FROM MONTHAVERAGE"; rs = stmt.executeQuery(sql_str); //rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE " ;while(rs.next())// 結(jié)果集存在,則進(jìn)行循環(huán)遍歷 { UserVo userVo = new UserVo(); userVo.setDD(rs.getInt("一" );list.add(userVo); } }catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ JDBC_Connection.free(rs, conn, stmt);// 關(guān)閉連接 } return list; } public static void main(String[] args) throws ClassNotFoundException { System.out.print("請(qǐng)輸入要計(jì)算的月份:" ;Scanner scanner=new Scanner(System.in); String str=scanner.next(); List<UserVo> list=QueryDesc.showUser(str);//調(diào)用查詢方法 //如果list集合不為空,則循環(huán)遍歷打印出所有的信息 if(list!=null){ System.out.print("十二" ;System.out.println(); for (int j = 0; j < list.size(); j++) { System.out.print(list.get(j).getDD()+"\t" ;System.out.println(); } } } } 其中public static List<UserVo> showUser(String M)這一句加了一個(gè)String M; 然后就是String name="M"; String sql_str = "SELECT "+name+" FROM MONTHAVERAGE"; rs = stmt.executeQuery(sql_str);按您說(shuō)的修改了, 最后加了一段:public static void main(String[] args) throws ClassNotFoundException { System.out.print("請(qǐng)輸入要計(jì)算的月份:" ;Scanner scanner=new Scanner(System.in); String str=scanner.next(); List<UserVo> list=QueryDesc.showUser(str);//調(diào)用查詢方法 //如果list集合不為空,則循環(huán)遍歷打印出所有的信息 if(list!=null){ System.out.print("十二" ;System.out.println(); for (int j = 0; j < list.size(); j++) { System.out.print(list.get(j).getDD()+"\t" ;System.out.println(); } } } } 這個(gè),可是結(jié)果顯示 : ORA-00904: "M": 標(biāo)識(shí)符無(wú)效 請(qǐng)問(wèn)是我修改的哪里有問(wèn)題嗎?謝謝您! |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|