免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1815 | 回复: 3
打印 上一主题 下一主题

java问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-05-07 15:04 |只看该作者 |倒序浏览
我想编写一个简单的查询系统可是总出现一些问题。
    首先是一段这样的代码:
        void numQuery_actionPerformed(ActionEvent e){
                try{
                        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver";
                        String url="jdbcdbc:学生成绩表";
                        cnt=DriverManager.getConnection(url,"sa","sa";
                        st=cnt.createStatement();
                        String sql="select*from 学生成绩表 where 学号="+studNum.getText();
                        rs=st.executeQuery(sql);
                        studNum.setText("";
                        vector.removeAllElements();
                        tm.fireTableStructureChanged();
                        while(rs.next()){
                                Vector rec_vector=new Vector();
                                rec_vector.addElement(rs.getString(1));
                                rec_vector.addElement(rs.getString(2));
                                rec_vector.addElement(rs.getString(3));
                                rec_vector.addElement(String.valueOf(rs.getInt(4)));
                                rec_vector.addElement(String.valueOf(rs.getInt(5)));
                                rec_vector.addElement(String.valueOf(rs.getInt(6)));
                                vector.addElement(rec_vector);
                        }
                        tm.fireTableDataChanged();
                        rs.close();
                        st.close();
                        cnt.commit();
                }
                catch(Exception ex){
                        System.out.println("您的数据库连接有问题";
                }
        }
    上面的是学号来查询的,而现在我把“String sql="select*from 学生成绩表 where 学号="+studNum.getText();
                                      rs=st.executeQuery(sql);
                                      studNum.setText("";”
改为是姓名查询,我的代码是:“String sql="select*from 学生成绩表 where 姓名="+studName.getText();
                              rs=st.executeQuery(sql);
                              studName.setText("";”
其他的代码没有改变。可是当我来运行时就抛出“您的数据库连接有问题”。
    请各位大哥帮帮忙分析分析问题出在那里。

论坛徽章:
0
2 [报告]
发表于 2008-05-07 20:09 |只看该作者
String sql="select*from 学生成绩表 where 姓名='"+studName.getText() + "'";

论坛徽章:
0
3 [报告]
发表于 2008-05-08 17:31 |只看该作者

java疑难

谢谢喽,那如果实现多查询应该怎么做,比如我想同时学号(studNum)和姓名(studName)的查询我应该怎么办哦!

论坛徽章:
0
4 [报告]
发表于 2008-05-08 21:13 |只看该作者
最基本的 not and or ,可以组合出很复杂的查询条件;
例如
学号= ... or 姓名=...
姓名 is like  '张%'    // 姓张的
等等;
最好找点关于SQL的资料看看,书或网上的帖子都可以
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP