24小时热门版块排行榜    

查看: 1659  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

楚明娟

新虫 (小有名气)

[求助] 大家好,我现在遇到了一个问题,请大家帮帮忙! 已有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>();//声明一个List集合,用于存放查询出的数据

                try {


           // String Str=" SELECT '%s' FROM MONTHAVERAGE ";
                   // String.format(Str,M);          // 格式化字符串


                        conn = JDBC_Connection.getConnection();// 连接数据库
                        stmt = conn.createStatement();// 建立Statement对象;
            rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE " );

                                while(rs.next())// 结果集存在,则进行循环遍历
                                {

                                        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);// 关闭连接
                       }
                return list;
        }

大家好,我想知道怎样将 rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE " );这一句中所选的那个列名“一”变成变量,在以上的程序中我要加入一段什么样的代码来实现呢?谢谢大家!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
楚明娟: 金币+5, 有帮助, 谢谢您! 2014-07-14 10:00:26
CODE:
String name = "--";
String sql_str = "SELECT "+name+" FROM MONTHAVERAGE";
rs = stmt.executeQuery(sql_str);

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2014-05-12 19:23:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

me_yu

木虫 (正式写手)

为什么要这么做呢?

[ 发自小木虫客户端 ]
听,寂静的夜里,田野里蛙声和虫鸣,好不欢快!
2楼2014-05-12 19:20:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

楚明娟

新虫 (小有名气)

引用回帖:
2楼: Originally posted by me_yu at 2014-05-12 19:20:36
为什么要这么做呢?

因为我想计算12个月中的任何一个月都是由我可以掌控的。。
4楼2014-05-13 08:28:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

楚明娟

新虫 (小有名气)

引用回帖:
3楼: Originally posted by libralibra at 2014-05-12 19:23:05
String name = "--";
String sql_str = "SELECT "+name+" FROM MONTHAVERAGE";
rs = stmt.executeQuery(sql_str);

您好,麻烦您了,我把程序按您的提示改了之后如下:
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>();//声明一个List集合,用于存放查询出的数据

                try {


           // String Str=" SELECT '%s' FROM MONTHAVERAGE ";
                   // String.format(Str,M);          // 格式化字符串


                        conn = JDBC_Connection.getConnection();// 连接数据库
                        stmt = conn.createStatement();// 建立Statement对象;
                        String name="M";
                        String sql_str = "SELECT "+name+" FROM MONTHAVERAGE";
                        rs = stmt.executeQuery(sql_str);
            //rs = stmt.executeQuery("SELECT 一 FROM MONTHAVERAGE ";

                                while(rs.next())// 结果集存在,则进行循环遍历
                                {

                                        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);// 关闭连接
                       }
                return list;
        }

                public static void main(String[] args) throws ClassNotFoundException {
                        System.out.print("请输入要计算的月份:";
                        Scanner scanner=new Scanner(System.in);
                        String str=scanner.next();


                        List<UserVo> list=QueryDesc.showUser(str);//调用查询方法
                        //如果list集合不为空,则循环遍历打印出所有的信息
                        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)这一句加了一个String M;
然后就是String name="M";
                        String sql_str = "SELECT "+name+" FROM MONTHAVERAGE";
                        rs = stmt.executeQuery(sql_str);按您说的修改了,
最后加了一段:public static void main(String[] args) throws ClassNotFoundException {
                        System.out.print("请输入要计算的月份:";
                        Scanner scanner=new Scanner(System.in);
                        String str=scanner.next();


                        List<UserVo> list=QueryDesc.showUser(str);//调用查询方法
                        //如果list集合不为空,则循环遍历打印出所有的信息
                        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();
                                }
                        }



        }

}
这个,可是结果显示  : ORA-00904: "M": 标识符无效
请问是我修改的哪里有问题吗?谢谢您!
5楼2014-05-13 08:41:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料与化工求调剂 +6 为学666 2026-03-16 6/300 2026-03-17 20:15 by peike
[考研] 277调剂 +5 自由煎饼果子 2026-03-16 6/300 2026-03-17 19:26 by 李leezz
[考研] 341求调剂 +5 捣蛋猪猪 2026-03-11 7/350 2026-03-17 19:09 by 捣蛋猪猪
[考研] 085601材料工程专硕求调剂 +4 慕寒mio 2026-03-16 4/200 2026-03-17 17:17 by ruiyingmiao
[考研] 有没有道铁/土木的想调剂南林,给自己招师弟中~ +3 TqlXswl 2026-03-16 7/350 2026-03-17 15:23 by TqlXswl
[考研] 290求调剂 +6 孔志浩 2026-03-12 11/550 2026-03-17 14:41 by 周舟舟77
[考研] 材料专硕274一志愿陕西师范大学求调剂 +5 薛云鹏 2026-03-13 5/250 2026-03-17 10:15 by Sammy2
[考研] 一志愿,福州大学材料专硕339分求调剂 +3 木子momo青争 2026-03-15 3/150 2026-03-17 07:52 by laoshidan
[考研] 304求调剂 +5 素年祭语 2026-03-15 5/250 2026-03-16 17:00 by 我的船我的海
[考研] 070303 总分349求调剂 +3 LJY9966 2026-03-15 5/250 2026-03-16 14:24 by xwxstudy
[考研] 297求调剂 +4 学海漂泊 2026-03-13 4/200 2026-03-14 11:51 by 热情沙漠
[考研] 材料080500调剂求收留 +3 一颗meteor 2026-03-13 3/150 2026-03-14 10:54 by peike
[考研] 308求调剂 +5 是Lupa啊 2026-03-11 5/250 2026-03-13 22:13 by JourneyLucky
[考研] 一志愿西南交大,材料专硕317求调剂 +5 lx8568 2026-03-11 5/250 2026-03-13 21:43 by peike
[考研] 333求调剂 +3 球球古力 2026-03-11 3/150 2026-03-13 21:27 by JourneyLucky
[考研] 301求调剂 +6 Liyouyumairs 2026-03-11 6/300 2026-03-13 20:11 by JourneyLucky
[考研] 材料专硕350 求调剂 +4 王金科 2026-03-12 4/200 2026-03-13 16:02 by ruiyingmiao
[考研] 274求调剂 +3 S.H1 2026-03-12 3/150 2026-03-13 15:15 by JourneyLucky
[考研] 289求调剂 +3 李政莹 2026-03-12 3/150 2026-03-13 11:02 by 求调剂zz
[考博] 26读博 +4 Rui135246 2026-03-12 10/500 2026-03-13 07:15 by gaobiao
信息提示
请填处理意见