本帖最后由 bigfish_jing 于 2011-12-12 19:24:53 编辑

解决方案 »

  1.   


    class Classify implements ActionListener {
            public void actionPerformed(ActionEvent e) {
                try{
                    String CLASS=String.valueOf(c_or_in_class.getSelectedItem());
                    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");            
                    Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=数据库课程设计","sa","123");            
                    Statement stmt=con.createStatement();
                    String SQL="SELECT distinct product_name FROM Product WHERE product_class='"+CLASS+"'";
                    System.out.println(SQL);
                    ResultSet rs=stmt.executeQuery(SQL);
                    c_or_in_proName.removeAllItems(); //在循环外面先移除所有选项
                    while(rs.next()){
                        c_or_in_proName.addItem(rs.getString(1));   
                    }}catch(Exception ex){}
                
            }
        }因为按照你原本那样些的话每次循环都删除了,所以只能获得最有一项,所以要将其放在循环外。