MySql教程

基于学生信息管理系统的数据库系统课程设计升级版(mysql)

本文主要是介绍基于学生信息管理系统的数据库系统课程设计升级版(mysql),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

          学校一位学弟在我之前写的课设(基于学生信息管理系统的数据库系统课程设计(mysql))基础上做了改进,功能更加细致和完善。

         1、执行创建数据库命令(数据库名为q2): create database q2;

         2、运行下面的数据库脚本建表。

/*
Navicat MySQL Data Transfer

Source Server         : pumpkin
Source Server Version : 50528
Source Host           : localhost:3306
Source Database       : infodb

Target Server Type    : MYSQL
Target Server Version : 50528
File Encoding         : 65001

Date: 2021-01-09 16:13:35
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for chang
-- ----------------------------
DROP TABLE IF EXISTS `chang`;
CREATE TABLE `chang` (
  `ID` int(11) DEFAULT NULL,
  `STUDENTID` int(11) DEFAULT NULL,
  `CHAN` int(11) DEFAULT NULL,
  `REC_TIME` varchar(15) DEFAULT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  KEY `SI_SI` (`STUDENTID`),
  KEY `chan_code` (`CHAN`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of chang
-- ----------------------------
INSERT INTO `chang` VALUES ('3', '3', '2', '2020/12/31', '复学');
INSERT INTO `chang` VALUES ('4', '4', '5', '2020/12/31', '转学');
INSERT INTO `chang` VALUES ('5', '5', '5', '2020/12/31', '转学');
INSERT INTO `chang` VALUES ('6', '6', '3', '2020/12/30', '退学');
INSERT INTO `chang` VALUES ('7', '7', '4', '2020/12/30', '复学');
INSERT INTO `chang` VALUES ('8', '8', '4', '2020/12/29', '复学');
INSERT INTO `chang` VALUES ('9', '9', '1', '2020/2/28', ' 休学');
INSERT INTO `chang` VALUES ('2', '2', '0', '2020/12/31', '转专业');
INSERT INTO `chang` VALUES ('1', '1', '0', '2020/12/31', '转专业');
INSERT INTO `chang` VALUES ('10', '10', '3', '2020/2/27', '退学');

-- ----------------------------
-- Table structure for change_code
-- ----------------------------
DROP TABLE IF EXISTS `change_code`;
CREATE TABLE `change_code` (
  `CODE` int(11) NOT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  PRIMARY KEY (`CODE`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of change_code
-- ----------------------------
INSERT INTO `change_code` VALUES ('0', '转系');
INSERT INTO `change_code` VALUES ('1', '休学');
INSERT INTO `change_code` VALUES ('2', '复学');
INSERT INTO `change_code` VALUES ('3', '退学');
INSERT INTO `change_code` VALUES ('4', '毕业');
INSERT INTO `change_code` VALUES ('5', '转学');

-- ----------------------------
-- Table structure for class
-- ----------------------------
DROP TABLE IF EXISTS `class`;
CREATE TABLE `class` (
  `ID` int(11) NOT NULL,
  `NAME` varchar(10) DEFAULT NULL,
  `MONITOR` int(11) DEFAULT NULL,
  PRIMARY KEY (`ID`),
  KEY `ID_index` (`ID`),
  KEY `MONITOR_SI` (`MONITOR`),
  CONSTRAINT `MONITOR_SI` FOREIGN KEY (`MONITOR`) REFERENCES `student` (`STUDENTID`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of class
-- ----------------------------
INSERT INTO `class` VALUES ('1', '一班', null);
INSERT INTO `class` VALUES ('2', '二班', null);
INSERT INTO `class` VALUES ('3', '三班', null);
INSERT INTO `class` VALUES ('4', '四班', null);
INSERT INTO `class` VALUES ('5', '五班', null);
INSERT INTO `class` VALUES ('6', '六班', null);
INSERT INTO `class` VALUES ('7', '七班', null);

-- ----------------------------
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department` (
  `ID` int(11) NOT NULL,
  `NAME` varchar(10) DEFAULT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of department
-- ----------------------------
INSERT INTO `department` VALUES ('1', '资安');
INSERT INTO `department` VALUES ('2', '土木');
INSERT INTO `department` VALUES ('3', '机电');
INSERT INTO `department` VALUES ('4', '计科');
INSERT INTO `department` VALUES ('5', '化工');
INSERT INTO `department` VALUES ('6', '物电');
INSERT INTO `department` VALUES ('7', '人文');
INSERT INTO `department` VALUES ('8', '外国语');
INSERT INTO `department` VALUES ('9', '马克思');
INSERT INTO `department` VALUES ('10', '体育');

-- ----------------------------
-- Table structure for punishment
-- ----------------------------
DROP TABLE IF EXISTS `punishment`;
CREATE TABLE `punishment` (
  `ID` int(11) DEFAULT NULL,
  `STUDENTID` int(11) DEFAULT NULL,
  `LEVELS` int(11) DEFAULT NULL,
  `REC_TIME` varchar(15) DEFAULT NULL,
  `ENABLE` varchar(4) DEFAULT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  KEY `LEVELS_CODETWO` (`LEVELS`),
  KEY `SI_SIthree` (`STUDENTID`),
  CONSTRAINT `LEVELS_CODETWO` FOREIGN KEY (`LEVELS`) REFERENCES `punish_levels` (`CODE`),
  CONSTRAINT `SI_SIthree` FOREIGN KEY (`STUDENTID`) REFERENCES `student` (`STUDENTID`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of punishment
-- ----------------------------
INSERT INTO `punishment` VALUES ('1', '6', '2', '2020/12/30', '是', '非法经营');
INSERT INTO `punishment` VALUES ('2', '9', '2', '2020/12/30', '是', '使用大功率电器');
INSERT INTO `punishment` VALUES ('3', '10', '4', '2020/12/30', '是', '嫖娼');

-- ----------------------------
-- Table structure for punish_levels
-- ----------------------------
DROP TABLE IF EXISTS `punish_levels`;
CREATE TABLE `punish_levels` (
  `CODE` int(11) NOT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  PRIMARY KEY (`CODE`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of punish_levels
-- ----------------------------
INSERT INTO `punish_levels` VALUES ('0', '警告');
INSERT INTO `punish_levels` VALUES ('1', '严重警告');
INSERT INTO `punish_levels` VALUES ('2', '记过');
INSERT INTO `punish_levels` VALUES ('3', '记大过');
INSERT INTO `punish_levels` VALUES ('4', '开除');

-- ----------------------------
-- Table structure for reward
-- ----------------------------
DROP TABLE IF EXISTS `reward`;
CREATE TABLE `reward` (
  `ID` int(11) DEFAULT NULL,
  `STUDENTID` int(11) DEFAULT NULL,
  `LEVELS` int(11) DEFAULT NULL,
  `REC_TIME` varchar(15) DEFAULT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  KEY `LEVELS_CODE` (`LEVELS`),
  KEY `SI_SItwo` (`STUDENTID`),
  KEY `DSRPIN` (`DSRPIN`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of reward
-- ----------------------------
INSERT INTO `reward` VALUES ('2', '2', '1', '2020/12/30', '校编程比赛');
INSERT INTO `reward` VALUES ('3', '3', '2', '2020/12/30', '一校一书');
INSERT INTO `reward` VALUES ('4', '4', '3', '2020/12/30', '新生写作赛');
INSERT INTO `reward` VALUES ('5', '5', '4', '2020/12/30', '新生才艺赛');
INSERT INTO `reward` VALUES ('6', '7', '6', '2020/12/30', '新生辩论赛');
INSERT INTO `reward` VALUES ('7', '8', '5', '2020/12/30', '新生书画赛');
INSERT INTO `reward` VALUES ('1', '1', '0', '2020/12/30', '发表SCI论文');

-- ----------------------------
-- Table structure for reward_levels
-- ----------------------------
DROP TABLE IF EXISTS `reward_levels`;
CREATE TABLE `reward_levels` (
  `CODE` int(11) NOT NULL,
  `DSRPIN` varchar(15) DEFAULT NULL,
  PRIMARY KEY (`CODE`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of reward_levels
-- ----------------------------
INSERT INTO `reward_levels` VALUES ('0', '校特等奖学金');
INSERT INTO `reward_levels` VALUES ('1', '校一等奖学金');
INSERT INTO `reward_levels` VALUES ('2', '校二等奖学金');
INSERT INTO `reward_levels` VALUES ('3', '校三等奖学金');
INSERT INTO `reward_levels` VALUES ('4', '系一等奖学金');
INSERT INTO `reward_levels` VALUES ('5', '系二等奖学金');
INSERT INTO `reward_levels` VALUES ('6', '系三等奖学金');

-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
  `STUDENTID` int(11) NOT NULL,
  `NAME` char(10) NOT NULL,
  `SEX` char(2) NOT NULL,
  `CLASS` int(11) NOT NULL,
  `DEPARTMENT` int(11) DEFAULT NULL,
  `BIRTHDAY` varchar(15) DEFAULT NULL,
  `NATIVE_PLACE` varchar(10) DEFAULT NULL,
  PRIMARY KEY (`STUDENTID`),
  KEY `SI_C` (`CLASS`),
  KEY `department_id` (`DEPARTMENT`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES ('1', '赵伊', '女', '1', '10', '2001.1.1', '湖南长沙');
INSERT INTO `student` VALUES ('2', '钱程', '男', '2', '9', '2001.2.2', '江西南昌');
INSERT INTO `student` VALUES ('3', '孙三', '男', '3', '8', '2001.3.3', '黑龙江哈尔滨');
INSERT INTO `student` VALUES ('4', '李四', '男', '4', '7', '2001.4.14', '河北石家庄');
INSERT INTO `student` VALUES ('5', '周五', '男', '5', '6', '2001.5.4', '山西太原');
INSERT INTO `student` VALUES ('6', '吴太和', '女', '6', '5', '2001.6.1', '内蒙古呼和浩特');
INSERT INTO `student` VALUES ('7', '郑七', '男', '7', '4', '2001.7.1', '吉林长春');
INSERT INTO `student` VALUES ('8', '王力宏', '男', '1', '3', '2001.8.1', '江苏南京');
INSERT INTO `student` VALUES ('9', '冯绍峰', '男', '2', '2', '2001.9.10', '浙江杭州');
INSERT INTO `student` VALUES ('10', '陈芊芊', '女', '3', '1', '2001.10.1', '安徽合肥');

        3、代码一共有三个java文件,都放在同一个叫做ZTY的包下。

       4、代码部分:

DbProcess2.java

package ZTY;
import java.sql.*;
public class DbProcess2{
	public Connection con = null;public Statement sta=null;
	ResultSet rs = null;
	  static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";  
//注意!:下行3306后面的q1为我建立的数据库名,要改成自己建立的数据库名!!!
	   static final String DB_URL = "jdbc:mysql://localhost:3306/q2?useSSL=false&serverTimezone=UTC";
//数据库账号密码,也要改为自己的
	   static final String USER = "root";
	    static final String PASS = "2000918131X";
 
	    public DbProcess2(){
			try {
				//Mysql数据库设置驱动程序类型
				Class.forName(JDBC_DRIVER); 
				System.out.println("连接数据库...");
				System.out.println("mysql数据库驱动加载成功");
 
			}
			catch(java.lang.ClassNotFoundException e) 
			{
				e.printStackTrace();
			}		
}
	    public void executeUpdate(String sql)
	    {
	    	connect();
	    	try{
	    		sta=con.createStatement();
	    		sta.execute(sql);
	    	}
	    	catch(SQLException ex) { 
				System.err.println(ex.getMessage());		
			}
	    	disconnect();
	    }
	    
	    public void queryall(String sql)
	    {
	    	connect();
	    	String s1="select change_code.DSRPIN,chang.REC_TIME,chang.DSRPIN as REASON from chang join change_code on change_code.CODE = chang.CHAN";
	    	s1=s1+" where STUDENTID = "+sql;
	    	System.out.println(s1);
	    	
	    	String s2="select reward_levels.DSRPIN,reward.REC_TIME,reward.DSRPIN as REASON from reward join reward_levels on reward_levels.CODE=reward.LEVELS";
	    	s2=s2+" where STUDENTID = "+sql;
	    	System.out.println(s2);
	    	
	    	String s3="select punish_levels.DSRPIN,punishment.REC_TIME,punishment.DSRPIN as REASON,punishment.ENABLE from punishment join punish_levels on punish_levels.CODE=punishment.LEVELS";
	    	s3=s3+" where STUDENTID = "+sql;
	    	System.out.println(s3);
	    	
	    	try{
	    		sta=con.createStatement();
	    		ResultSet RS1=sta.executeQuery(s1);
	    		while(RS1.next())
	    		{
	    		String P1=RS1.getString("DSRPIN");
	    		String P2=RS1.getString("REC_TIME");
	    		String P3=RS1.getString("REASON");
	    		System.out.println(P1);System.out.println(P2);System.out.println(P3);
	    		}
	    	}
	    	catch(SQLException ex) { 
				System.err.println(ex.getMessage());		
			}
	    	disconnect();
	    }
	    
	    
	    
public void connect()
{
			try{
				//mysql数据库
				con = DriverManager.getConnection(DB_URL,USER,PASS);  
				
 
				if(con!=null){
		            System.out.println("数据库连接成功");
		        }
			}
			catch(Exception e){
				e.printStackTrace();
			}
}	 
 
 
public void disconnect(){
	try{
		if(con != null){
			System.out.println("数据库断开成功");
			con.close();
			con = null;
		}
	}
	catch(Exception e){
		e.printStackTrace();
	}
}
public ResultSet executeQuery(String sql) {
		try {
			System.out.println("executeQuery(). sql = " + sql);
			
			PreparedStatement pstm = con.prepareStatement(sql);
			// 执行查询
			rs = pstm.executeQuery();
		} 
		catch(SQLException ex) { 
			ex.printStackTrace();
		}
		return rs;
	}
public int executeUpdate1(String sql) {
	int count = 0;
	connect();
	try {
		Statement stmt = con.createStatement();
		count = stmt.executeUpdate(sql);
	} 
	catch(SQLException ex) { 
		System.err.println(ex.getMessage());		
	}
	disconnect();
	return count;
}
}

login.java

package ZTY;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;


public class login implements ActionListener {
    // 定义主窗口
    private final JFrame jf;
    // 定义输入用户名和密码的标签提示
    private final JLabel InputUserName;
    private final JLabel InputPassWord;
    // 定义输入用户名文本框
    private final JTextField UserName;
    // 定义输入密码框
    private final JPasswordField PassWord;
    // 定义登录和取消按钮
    private final JButton Login;
    private final JButton Cancel;

    login() {
        // 各组件实例化过程
        jf = new JFrame("学生信息管理系统");
        InputUserName = new JLabel("        ID:    ");
        InputPassWord = new JLabel("password:");
        UserName = new JTextField();
        PassWord = new JPasswordField();
        Login = new JButton("登录");
        Cancel = new JButton("退出");
        // 设置主窗口大小、位置和布局
        jf.setSize(400, 150);
        jf.setLocation(600, 400);
        // 设置窗口流式布局
        jf.setLayout(new FlowLayout());
        // 设置用户名和密码框大小
        UserName.setPreferredSize(new Dimension(300, 30));
        PassWord.setPreferredSize(new Dimension(300, 30));
        // 依次向主窗口添加各组件
        jf.getContentPane().add(InputUserName);
        jf.getContentPane().add(UserName);
        jf.getContentPane().add(InputPassWord);
        jf.getContentPane().add(PassWord);
        jf.getContentPane().add(Login);
        jf.getContentPane().add(Cancel);
        // 设置主窗口不可调节大小
        jf.setResizable(false);
        // 设置主窗口默认关闭操作
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 给登录和取消按钮添加 Action 监听器
        Login.addActionListener(this);
        Cancel.addActionListener(this);
        // 设置主窗口可见
        jf.setVisible(true);
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        // 如果单击【退出】按钮则程序退出
        if (e.getSource().equals(Cancel)) {
            System.exit(0);
        }
        // 如果单击【登录】按钮则检查用户名和密码是否匹配
        else if (e.getSource().equals(Login)) {
            // 如果用户名和密码匹配,则打开具体操作面板
            if (UserName.getText().equals("root") && String.valueOf(PassWord.getPassword()).equals("123")) {
                jf.setVisible(false);
                jf.dispose();
                QUESTIONONE2 hh= new QUESTIONONE2();
            }
            // 如果用户名和密码不匹配,则给出提示对话框
            else {
                JOptionPane.showOptionDialog(jf, "用户名或密码错误", "登陆失败",
                        JOptionPane.CLOSED_OPTION,
                        JOptionPane.ERROR_MESSAGE, null, null, null);
            }
        }
    }
     // 启动登录界面
     public static void main(String[] args) {
            new login();
     }

}
QUESTIONONE2.java
package ZTY;

import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;

public class QUESTIONONE2 extends JFrame{
	
	
	
	JPanel jap =null;
	
	JPanel jap1=null;
	JTextField JaTF1=null;JLabel jab1 = null;
	
	JPanel jap2=null;
	JTextField JaTF2=null;JLabel jab2 = null;
	
	JPanel jap3=null;
	JTextField JaTF3=null;JLabel jab3 = null;
	
	JPanel jap4=null;
	JTextField JaTF4=null;JLabel jab4 = null;
	
	JPanel jap5=null;
	JTextField JaTF5=null;JLabel jab5 = null;
	
	JPanel jap6=null;
	JTextField JaTF6=null;JLabel jab6 = null;
	
	JPanel jap7=null;
	JTextField JaTF7=null;JLabel jab7 =null;
	
	JPanel jap8=null;
	JButton jab=null;
	
	
	JPanel jap9=null;JLabel jab9=null;
	
	
	JPanel jbp =null;
	
	JPanel jbp1=null;JTextField JbTF1=null;JLabel jbb1 = null;
	JPanel jbp2=null;JTextField JbTF2=null;JLabel jbb2 = null;
	JPanel jbp3=null;JTextField JbTF3=null;JLabel jbb3 = null;
	JPanel jbp4=null;JTextField JbTF4=null;JLabel jbb4 = null;
	JPanel jbp5=null;JTextField JbTF5=null;JLabel jbb5 = null;
	JButton jbb=null;
	
	
	JPanel jcp =null;
	
	JPanel jcp1=null;JTextField JcTF1=null;JLabel jcb1 = null;
	JPanel jcp2=null;JTextField JcTF2=null;JLabel jcb2 = null;
	JPanel jcp3=null;JTextField JcTF3=null;JLabel jcb3 = null;
	JPanel jcp4=null;JTextField JcTF4=null;JLabel jcb4 = null;
	JPanel jcp5=null;JTextField JcTF5=null;JLabel jcb5 = null;
	JButton jcb=null;
	
	
	JPanel jdp =null;
	
	JPanel jdp1=null;JTextField JdTF1=null;JLabel jdb1 = null;
	JPanel jdp2=null;JTextField JdTF2=null;JLabel jdb2 = null;
	JPanel jdp3=null;JTextField JdTF3=null;JLabel jdb3 = null;
	JPanel jdp4=null;JTextField JdTF4=null;JLabel jdb4 = null;
	JPanel jdp5=null;JTextField JdTF5=null;JLabel jdb5 = null;
	JPanel jdp6=null;JTextField JdTF6=null;JLabel jdb6 = null;
	JButton jdb=null;
	
	
	JPanel jep =null;
	
	JPanel jep1=null;JTextField JeTF1=null;JLabel jeb1 = null;
	JPanel jep2=null;JButton JeB1=null;
	JPanel jep3=null;JButton JeB2=null;
	JPanel jep4=null;JTextField JeTF4=null;JLabel jeb4 = null;
	JPanel jep5=null;JTextField JeTF5=null;JLabel jeb5 = null;
	JPanel jep6=null;JTextField JeTF6=null;JLabel jeb6 = null;
	JPanel jep7=null;JTextField JeTF7=null;JLabel jeb7 = null;
	JPanel jep8=null;JTextField JeTF8=null;JLabel jeb8 = null;
	JPanel jep9=null;JTextField JeTF9=null;JLabel jeb9 = null;
	JPanel jep10=null;JTextField JeTF10=null;JLabel jeb10 = null;
	JPanel jep11=null;JTextField JeTF11=null;JLabel jeb11 = null;
	JPanel jep12=null;JTextField JeTF12=null;JLabel jeb12 = null;
	JPanel jep13=null;JTextField JeTF13=null;JLabel jeb13 = null;
	JTabbedPane JTP =null;
	
	
	JTable studentJTable = null;
	JScrollPane studentJScrollPane = null;
	Vector studentVector = null;
	Vector titleVector = null;
	
	JButton jBQueryAll = null;
	JButton jBDeleteCurrentRecord = null;
	JButton jBDeleteAllRecords = null;
	private static DbProcess2 dbProcess=new DbProcess2();
	String SelectQueryFieldStr="";
	public QUESTIONONE2 (){  
		
		
		JComboBox<String>jCBSelectQueryField = new JComboBox<String>();//查询字段
		jCBSelectQueryField.addItem("学号");  
		jCBSelectQueryField.addItem("姓名");  
		jCBSelectQueryField.addItem("性别");
		jCBSelectQueryField.addItem("班级");
		jCBSelectQueryField.addItem("院系");
		jCBSelectQueryField.addItem("生日");
		jCBSelectQueryField.addItem("住址");
		jCBSelectQueryField.addItemListener(new ItemListener() {//下拉框事件监听  
            public void itemStateChanged(ItemEvent event) {  
                switch (event.getStateChange()) {  
                case ItemEvent.SELECTED:  
                	SelectQueryFieldStr = (String) event.getItem();
                    System.out.println("选中:" + SelectQueryFieldStr); 
                    break;  
                case ItemEvent.DESELECTED:  
                    System.out.println("取消选中:" + event.getItem());  
                    break;  
                }  
            }  
        });
		
				jap=new JPanel(new GridLayout(9,1));//return jap;
				jap1=new JPanel();
				JaTF1=new JTextField(8);
				jab1 = new JLabel("学号");
				jab1.setFont(new Font(null,Font.PLAIN,20));
				jap1.add(jab1);
				jap1.add(JaTF1);
				
				
				jap2=new JPanel();
				JaTF2=new JTextField(8);
				jab2 = new JLabel("姓名");
				jab2.setFont(new Font(null,Font.PLAIN,20));
				jap2.add(jab2);
				jap2.add(JaTF2);
						
				jap3=new JPanel();
				JaTF3=new JTextField(8);
				jab3 = new JLabel("性别");
				jab3.setFont(new Font(null,Font.PLAIN,20));
				jap3.add(jab3);
				jap3.add(JaTF3);
				JComboBox<String> jCBSexField = new JComboBox<String>();
				jCBSexField.addItem("男");
				jCBSexField.addItem("女");
				jCBSexField.addItemListener(new ItemListener() {//下拉框事件监听  
		            public void itemStateChanged(ItemEvent event) {  
		                String SexFieldStr;
						switch (event.getStateChange()) {  
		                case ItemEvent.SELECTED:  
		                	SexFieldStr = (String) event.getItem();  
		                    System.out.println("选中:" + SexFieldStr); 
		                    JaTF3.setText(jCBSexField.getSelectedItem().toString());
		                    break;  
		                case ItemEvent.DESELECTED:  
		                    System.out.println("取消选中:" + event.getItem());  
		                    break;  
		                }  
		            }
				});
				jap3.add(jCBSexField);
				
				jap4=new JPanel();
				JaTF4=new JTextField(8);
				jab4 = new JLabel("生日");
				jab4.setFont(new Font(null,Font.PLAIN,20));
				jap4.add(jab4);
				jap4.add(JaTF4);
				
				jap5=new JPanel();
				JaTF5=new JTextField(8);
				jab5 = new JLabel("籍贯");
				jab5.setFont(new Font(null,Font.PLAIN,20));
				jap5.add(jab5);
				jap5.add(JaTF5);
				
				jap6=new JPanel();
				JaTF6=new JTextField(8);
				jab6 = new JLabel("院系");
				jab6.setFont(new Font(null,Font.PLAIN,20));
				jap6.add(jab6);
				jap6.add(JaTF6);
				
				jap7=new JPanel();
				JaTF7=new JTextField(8);
				jab7 = new JLabel("班级");
				jab7.setFont(new Font(null,Font.PLAIN,20));
				jap7.add(jab7);
				jap7.add(JaTF7);
				
				jap8=new JPanel();
				jab=new JButton("输入");
				jab.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("输入")
								&&!JaTF1.getText().isEmpty()
								&&!JaTF2.getText().isEmpty()
								&&!JaTF3.getText().isEmpty()
								&&!JaTF4.getText().isEmpty()
								&&!JaTF5.getText().isEmpty()
								&&!JaTF6.getText().isEmpty()
								&&!JaTF7.getText().isEmpty())
						{
							System.out.println("actionPerformed(). 输入");
							String sNo=JaTF1.getText().trim();
							String sName=JaTF2.getText().trim();
							String sSex=JaTF3.getText().trim();
							String sBir=JaTF4.getText().trim();
							String sHom=JaTF5.getText().trim();
							String sDep=JaTF6.getText().trim();
							String sCla=JaTF7.getText().trim();
							String sql = "insert into student(STUDENTID,NAME,SEX,CLASS,DEPARTMENT,BIRTHDAY,NATIVE_PLACE) values(";
							sql = sql + sNo + ",'"+ sName + "','" + sSex + "'," + sCla + "," + sDep + ",'" + sBir + "','" + sHom + "')";
							System.out.println(sql);
							new DbProcess2().executeUpdate(sql);	
						}
					}
				});
				
				jBQueryAll = new JButton("查询所有记录");
				jBDeleteCurrentRecord = new JButton("删除当前记录");
				jBDeleteAllRecords = new JButton("删除所有记录");
				studentVector = new Vector();
				titleVector = new Vector();
				
				// 定义表头
				titleVector.add("学号");
				titleVector.add("姓名");
				titleVector.add("性别");
				titleVector.add("班级");
				titleVector.add("院系");
				titleVector.add("生日");
				titleVector.add("住址");
				//studentTableModel = new DefaultTableModel(tableTitle, 15);
				studentJTable = new JTable(studentVector, titleVector);
				studentJTable.setPreferredScrollableViewportSize(new Dimension(500,160));
				studentJScrollPane = new JScrollPane(studentJTable);
				//分别设置水平和垂直滚动条自动出现
				studentJScrollPane.setHorizontalScrollBarPolicy(                
		                JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
				studentJScrollPane.setVerticalScrollBarPolicy(                
		                JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
				
				jBQueryAll.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e){
						System.out.println("actionPerformed(). 查询所有记录");
						queryAllProcess();
					}
				});
				jBDeleteCurrentRecord.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e){
							System.out.println("actionPerformed(). 删除当前记录");
							deleteCurrentRecordProcess();
						}
				});
				jBDeleteAllRecords.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e){
						System.out.println("actionPerformed(). 删除所有记录");
						deleteAllRecordsProcess();
					}
				});
				
				Dimension preferredSize = new Dimension(150,20);
				jab.setPreferredSize(preferredSize);
				jap8.add(jab);
				
				jab9=new JLabel("<html>作者:pumpkin</html>");
				jap9=new JPanel(new FlowLayout());//布局
				jap9.add(jab9);
				
				jap.add(jap1);
				jap.add(jap2);
				jap.add(jap3);
				jap.add(jap4);
				jap.add(jap5);
				jap.add(jap6);
				jap.add(jap7);
				jap.add(jap8);
				jap.add(jap9);
				
 
				jbp=new JPanel();//return jbp;
				jbp1=new JPanel();
				jbp2=new JPanel();
				jbp3=new JPanel();
				jbp4=new JPanel();
				jbp5=new JPanel();
				
				JbTF1=new JTextField(8);
				jbb1=new JLabel("记录号");
				jbb1.setFont(new Font(null,Font.PLAIN,20));
				jbp1.add(jbb1);jbp1.add(JbTF1);
			
				JbTF2=new JTextField(8);
				jbb2=new JLabel("学号");
				jbb2.setFont(new Font(null,Font.PLAIN,20));
				jbp2.add(jbb2);jbp2.add(JbTF2);
				
				JTextField JbTF3=new JTextField(4);
				JLabel jbb3=new JLabel("变更代码");
				jbb3.setFont(new Font(null,Font.PLAIN,20));
				jbp3.add(jbb3);jbp3.add(JbTF3);
				
				JbTF4=new JTextField(6);
				jbb4=new JLabel("记录时间");
				jbb4.setFont(new Font(null,Font.PLAIN,20));
				jbp4.add(jbb4);jbp4.add(JbTF4);
				
				JbTF5=new JTextField(11);
				jbb5=new JLabel("描述");
				jbb5.setFont(new Font(null,Font.PLAIN,20));
				jbp5.add(jbb5);jbp5.add(JbTF5);
				jbb=new JButton("输入");
				Dimension preferredSize2 = new Dimension(136,20);
				jbb.setPreferredSize(preferredSize2);
				jbp5.add(jbb);
				
 
				jbp.add(jbp1);jbp.add(jbp2);jbp.add(jbp3);jbp.add(jbp4);jbp.add(jbp5);
				jbb.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("输入")
								&&!JbTF1.getText().isEmpty()
								&&!JbTF2.getText().isEmpty()
								&&!JbTF3.getText().isEmpty()
								&&!JbTF4.getText().isEmpty()
								&&!JbTF5.getText().isEmpty())
						{
							System.out.println("actionPerformed(). 输入");
							String ID=JbTF1.getText().trim();
							String SI=JbTF2.getText().trim();
							String CE=JbTF3.getText().trim();
							String R_T=JbTF4.getText().trim();
							String DSRPIN=JbTF5.getText().trim();
	
						String sql = "insert into chang(ID,STUDENTID,CHAN,REC_TIME,DSRPIN) values(";
						sql=sql +ID+','+SI+','+CE+','+"'"+R_T+"'"+ ','+"'"+DSRPIN+"')";
						System.out.println(sql);
						new DbProcess2().executeUpdate(sql);
						}
					}
				});
			
				jcp=new JPanel();//return jcp;
				jcp1=new JPanel();
				jcp2=new JPanel();
				jcp3=new JPanel();
				jcp4=new JPanel();
				jcp5=new JPanel();
				
				JcTF1=new JTextField(8);
				jcb1=new JLabel("记录号");
				jcb1.setFont(new Font(null,Font.PLAIN,20));
				jcp1.add(jcb1);jcp1.add(JcTF1);
				
				JcTF2=new JTextField(8);
				jcb2=new JLabel("学号");
				jcb2.setFont(new Font(null,Font.PLAIN,20));
				jcp2.add(jcb2);jcp2.add(JcTF2);
				
				JcTF3=new JTextField(4);
				jcb3=new JLabel("级别代码");
				jcb3.setFont(new Font(null,Font.PLAIN,20));
				jcp3.add(jcb3);jcp3.add(JcTF3);
				
				JcTF4=new JTextField(6);
				jcb4=new JLabel("记录时间");
				jcb4.setFont(new Font(null,Font.PLAIN,20));
				jcp4.add(jcb4);jcp4.add(JcTF4);
				
				JcTF5=new JTextField(11);
				jcb5=new JLabel("描述");
				jcb5.setFont(new Font(null,Font.PLAIN,20));
				jcp5.add(jcb5);jcp5.add(JcTF5);
				jcb=new JButton("输入");
				Dimension preferredSize3 = new Dimension(136,20);
				jcb.setPreferredSize(preferredSize3);
				jcp5.add(jcb);
				
				jcp.add(jcp1);jcp.add(jcp2);jcp.add(jcp3);jcp.add(jcp4);jcp.add(jcp5);
				jcb.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("输入")
								&&!JcTF1.getText().isEmpty()
								&&!JcTF2.getText().isEmpty()
								&&!JcTF3.getText().isEmpty()
								&&!JcTF4.getText().isEmpty()
								&&!JcTF5.getText().isEmpty())
						{
							System.out.println("actionPerformed(). 输入");
							String ID=JcTF1.getText().trim();
							String SI=JcTF2.getText().trim();
							String LEVELS=JcTF3.getText().trim();
							String R_T=JcTF4.getText().trim();
							String DSRPIN=JcTF5.getText().trim();
				
						String sql = "insert into reward(ID,STUDENTID,LEVELS,REC_TIME,DSRPIN) values(";
						sql=sql +ID+','+SI+','+LEVELS+','+"'"+R_T+"'"+ ','+"'"+DSRPIN+"')";
						System.out.println(sql);
						new DbProcess2().executeUpdate(sql);
						}
					}
				});
					
				
				jdp=new JPanel();//	return jdp;
				jdp1=new JPanel();
				jdp2=new JPanel();
				jdp3=new JPanel();
				jdp4=new JPanel();
				jdp5=new JPanel();
				jdp6=new JPanel();
				
				JdTF1=new JTextField(8);
				jdb1=new JLabel("记录号");
				jdb1.setFont(new Font(null,Font.PLAIN,20));
				jdp1.add(jdb1);jdp1.add(JdTF1);
				
				JdTF2=new JTextField(8);
				jdb2=new JLabel("学号");
				jdb2.setFont(new Font(null,Font.PLAIN,20));
				jdp2.add(jdb2);jdp2.add(JdTF2);
				
				JdTF3=new JTextField(5);
				jdb3=new JLabel("级别代码");
				jdb3.setFont(new Font(null,Font.PLAIN,20));
				jdp3.add(jdb3);jdp3.add(JdTF3);
				
				JdTF4=new JTextField(6);
				jdb4=new JLabel("记录时间");
				jdb4.setFont(new Font(null,Font.PLAIN,20));
				jdp4.add(jdb4);jdp4.add(JdTF4);
				
				JdTF5=new JTextField(10);
				jdb5=new JLabel("描述");
				jdb5.setFont(new Font(null,Font.PLAIN,20));
				jdp5.add(jdb5);jdp5.add(JdTF5);
				
				JdTF6=new JTextField(4);
				jdb6=new JLabel("是否生效");
				jdb6.setFont(new Font(null,Font.PLAIN,20));
				jdp6.add(jdb6);jdp6.add(JdTF6);
				
				jdb=new JButton("输入");
				Dimension preferredSize4 = new Dimension(136,20);
				jdb.setPreferredSize(preferredSize4);
				
				jdp.add(jdp1);jdp.add(jdp2);jdp.add(jdp3);jdp.add(jdp4);jdp.add(jdp5);jdp.add(jdp6);jdp.add(jdb);
				jdb.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("输入")
								&&!JdTF1.getText().isEmpty()
								&&!JdTF2.getText().isEmpty()
								&&!JdTF3.getText().isEmpty()
								&&!JdTF4.getText().isEmpty()
								&&!JdTF5.getText().isEmpty()
								&&!JdTF6.getText().isEmpty())
						{
							System.out.println("actionPerformed(). 输入");
							String ID=JdTF1.getText().trim();
							String SI=JdTF2.getText().trim();
							String LEVELS=JdTF3.getText().trim();
							String R_T=JdTF4.getText().trim();
							String DSRPIN=JdTF5.getText().trim();
							String ENABLE=JdTF6.getText().trim();
							
						String sql = "insert into punishment(ID,STUDENTID,LEVELS,REC_TIME,ENABLE,DSRPIN) values(";
						sql=sql +ID+','+SI+','+LEVELS+','+"'"+R_T+"'"+ ','+ "'" + ENABLE + "',"+"'"+DSRPIN+"')";
						System.out.println(sql);
						new DbProcess2().executeUpdate(sql);
						}//输入级别为0-4之间不能超过4
					}
				});
						
				
				jep=new JPanel();//	return jep;
				jep1=new JPanel();
				jep2=new JPanel();
				jep3=new JPanel();
				jep4=new JPanel();
				jep5=new JPanel();
				jep6=new JPanel();
				jep7=new JPanel();
				jep8=new JPanel();
				jep9=new JPanel();
				jep10=new JPanel();
				jep11=new JPanel();
				jep12=new JPanel();
				jep13=new JPanel();
				
				JeTF1=new JTextField(8);
				jeb1=new JLabel("");
				jeb1.setFont(new Font(null,Font.PLAIN,20));
				jep1.add(jeb1);
				jep1.add(jCBSelectQueryField);
				jep1.add(JeTF1);
				
				JeB1=new JButton("查询");
				Dimension preferredSize5 = new Dimension(136,20);
				JeB1.setPreferredSize(preferredSize5);
				JeB1.addActionListener(new ActionListener()
				{
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("查询")&&!JeTF1.getText().trim().isEmpty())
						{
							String sql=JeTF1.getText().trim();
							queryall(sql);
							queryProcess(sql);
						}
						
					}
				});
				jep2.add(JeB1);
				
				JeB2=new JButton("修改");
				
				jep3.add(JeB2);
				
				JeTF4=new JTextField(8);
				jeb4=new JLabel("学籍变动");
				jeb4.setFont(new Font(null,Font.PLAIN,20));
				jep4.add(jeb4);jep4.add(JeTF4);
				
				JeTF5=new JTextField(8);
				jeb5=new JLabel("记录时间");
				jeb5.setFont(new Font(null,Font.PLAIN,20));
				jep5.add(jeb5);jep5.add(JeTF5);
				
				JeTF6=new JTextField(8);
				jeb6=new JLabel("描述");
				jeb6.setFont(new Font(null,Font.PLAIN,20));
				jep6.add(jeb6);jep6.add(JeTF6);
				
				JeTF7=new JTextField(8);
				jeb7=new JLabel("奖励");
				jeb7.setFont(new Font(null,Font.PLAIN,20));
				jep7.add(jeb7);jep7.add(JeTF7);
				
				JeTF8=new JTextField(8);
				jeb8=new JLabel("记录时间");
				jeb8.setFont(new Font(null,Font.PLAIN,20));
				jep8.add(jeb8);jep8.add(JeTF8);
				
				JeTF9=new JTextField(8);
				jeb9=new JLabel("描述");
				jeb9.setFont(new Font(null,Font.PLAIN,20));
				jep9.add(jeb9);jep9.add(JeTF9);
				
				JeTF10=new JTextField(4);
				jeb10=new JLabel("处罚");
				jeb10.setFont(new Font(null,Font.PLAIN,20));
				jep10.add(jeb10);jep10.add(JeTF10);
				
				JeTF11=new JTextField(3);
				jeb11=new JLabel("记录时间");
				jeb11.setFont(new Font(null,Font.PLAIN,20));
				jep11.add(jeb11);jep11.add(JeTF11);
				
				JeTF12=new JTextField(8);
				jeb12=new JLabel("描述");
				jeb12.setFont(new Font(null,Font.PLAIN,20));
				jep12.add(jeb12);jep12.add(JeTF12);
				
				JeTF13=new JTextField(2);
				jeb13=new JLabel("是否生效");
				jeb13.setFont(new Font(null,Font.PLAIN,20));
				jep13.add(jeb13);jep13.add(JeTF13);
				
				
				Dimension preferredSize6 = new Dimension(136,20);
				JeB2.setPreferredSize(preferredSize6);
				JeB2.addActionListener(new ActionListener()
				{
					public void actionPerformed(ActionEvent e)
					{
						if(e.getActionCommand().equals("修改")&&!JeTF1.getText().trim().isEmpty())
						{
							String sql=JeTF1.getText().trim();
							changeall(sql);
							queryall(sql);
						}
					}
				});
				
				jep.add(jep1);jep.add(jep2);jep.add(jep3);
				jep.add(jep4);jep.add(jep5);jep.add(jep6);
				jep.add(jep7);jep.add(jep8);jep.add(jep9);
				jep.add(jep10);jep.add(jep11);jep.add(jep12);jep.add(jep13);
				jep.add(studentJScrollPane);//
				jep.add(jBQueryAll);
				jep.add(jBDeleteCurrentRecord);
				jep.add(jBDeleteAllRecords);
				
				JTP=new JTabbedPane();
				JTP.addTab("学生个人情况查询和修改界面",jep);
				JTP.addTab("学生个人信息输入界面 ",jap);
				JTP.addTab("学籍变更情况输入界面",jbp);
				JTP.addTab("奖励信息输入界面",jcp);
				JTP.addTab("处罚情况输入界面",jdp);
				JTP.addChangeListener(new ChangeListener() {
			            @Override
			            public void stateChanged(ChangeEvent e) {
			                System.out.println("当前选中的选项卡: " + JTP.getSelectedIndex());
			            }
			        });
			        // 设置默认选中的选项卡
			        JTP.setSelectedIndex(0);
			        this.add(JTP);
			        this.setLayout(new GridLayout(2, 1));
			        this.setContentPane(JTP);
			        this.setSize(600,500);
			        this.setLocation(400, 180);
			        this.setTitle("学生信息管理系统");
			        this.setBackground(Color.blue);
			    	this.setVisible(true);
					this.setResizable(false);
					this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
					
} 
    public static void main(String args[]){								
        // TODO Auto-generated method stub
		QUESTIONONE2 hh= new  QUESTIONONE2();
    }
    
    public void queryall(String sql)
    {
    	String s1="select change_code.DSRPIN,chang.REC_TIME,chang.DSRPIN as REASON from chang join change_code on change_code.CODE = chang.CHAN";
		s1=s1+" where "+jCBSelectQueryFieldTransfer(SelectQueryFieldStr)+" = "+sql;
    	
    	String s2="select reward_levels.DSRPIN,reward.REC_TIME,reward.DSRPIN as REASON from reward join reward_levels on reward_levels.CODE=reward.LEVELS";
    	s2=s2+" where "+jCBSelectQueryFieldTransfer(SelectQueryFieldStr)+" = "+sql;
  
    	String s3="select punish_levels.DSRPIN,punishment.REC_TIME,punishment.DSRPIN as REASON,punishment.ENABLE from punishment join punish_levels on punish_levels.CODE=punishment.LEVELS";
    	s3=s3+" where "+jCBSelectQueryFieldTransfer(SelectQueryFieldStr)+" = "+sql;
    	try{
    		dbProcess.connect();
    		dbProcess.sta=dbProcess.con.createStatement();
    		ResultSet RS1=dbProcess.sta.executeQuery(s1);
    		while(RS1.next())
    		{
    		String P1=RS1.getString("DSRPIN");
    		String P2=RS1.getString("REC_TIME");
    		String P3=RS1.getString("REASON");
    		System.out.println(P1);System.out.println(P2);System.out.println(P3);
    		JeTF4.setText(P1);JeTF5.setText(P2);JeTF6.setText(P3);
    		}
    	}
    	catch(SQLException ex) { 
    			System.err.println(ex.getMessage());		
    		}
        	dbProcess.disconnect();
    	
        try {
        	dbProcess.connect();
    		dbProcess.sta=dbProcess.con.createStatement();
    		ResultSet RS1=dbProcess.sta.executeQuery(s2);
    		while(RS1.next())
    		{
    			String P4=RS1.getString("DSRPIN");
        		String P5=RS1.getString("REC_TIME");
        		String P6=RS1.getString("REASON");
        		System.out.println(P4);System.out.println(P5);System.out.println(P6);
        		JeTF7.setText(P4);JeTF8.setText(P5);JeTF9.setText(P6);
    		}
        	}
    	catch(SQLException ex) { 
    			System.err.println(ex.getMessage());		
    		}
        	dbProcess.disconnect();
    		
        try {
        	dbProcess.connect();
    		dbProcess.sta=dbProcess.con.createStatement();
    		ResultSet RS1=dbProcess.sta.executeQuery(s3);
    		while(RS1.next())
    		{
    			String P7=RS1.getString("DSRPIN");
        		String P8=RS1.getString("REC_TIME");
        		String P9=RS1.getString("REASON");
        		String P10=RS1.getString("ENABLE");
        		System.out.println(P7);System.out.println(P8);System.out.println(P9);
        		JeTF10.setText(P7);JeTF11.setText(P8);JeTF12.setText(P9);JeTF13.setText(P10);
    		}
    	}
    	catch(SQLException ex) { 
			System.err.println(ex.getMessage());		
		}
    	dbProcess.disconnect();
    }
    
    public void queryProcess(String sQueryField)
	{
		try{
			// 建立查询条件
			String sql = "select * from student where ";
			 String queryFieldStr = jCBSelectQueryFieldTransfer(SelectQueryFieldStr);
		
			if(queryFieldStr.equals("STUDENTID")||queryFieldStr.equals("CLASS")||queryFieldStr.equals("DEPARTMENT")){
				sql = sql + queryFieldStr;
				sql = sql + " = " + sQueryField;
			}else{
				sql = sql + queryFieldStr;
				sql = sql + " = ";
				sql = sql + "'" + sQueryField + "';";
			}
			
			System.out.println("queryProcess(). sql = " + sql);
	
			dbProcess.connect();
			ResultSet rs = dbProcess.executeQuery(sql);
	
			// 将查询获得的记录数据,转换成适合生成JTable的数据形式
			studentVector.clear();
			while(rs.next()){
				Vector v = new Vector();
				v.add(Integer.valueOf(rs.getInt("STUDENTID")));
				v.add(rs.getString("NAME"));
				v.add(rs.getString("SEX"));
				v.add(Integer.valueOf(rs.getInt("CLASS")));
				v.add(Integer.valueOf(rs.getInt("DEPARTMENT")));
				v.add(rs.getString("BIRTHDAY"));
				v.add(rs.getString("NATIVE_PLACE"));
				studentVector.add(v);
			}
			
			studentJTable.updateUI();

			dbProcess.disconnect();
		}catch(SQLException sqle){
			System.out.println("sqle = " + sqle);
			JOptionPane.showMessageDialog(null,
				"数据操作错误","错误",JOptionPane.ERROR_MESSAGE);
		}catch(Exception e){
			System.out.println("e = " + e);
			JOptionPane.showMessageDialog(null,
				"数据操作错误","错误",JOptionPane.ERROR_MESSAGE);
		}
	}
    
    
 public void changeall(String sql)
 {
	 
	 String changchan=JeTF4.getText();
	 String changtime=JeTF5.getText();
	 String changedes=JeTF6.getText();
	 String rew=JeTF7.getText();
	 String rewtime=JeTF8.getText();
	 String rewdesc=JeTF9.getText();
	 String pun=JeTF10.getText();
	 String puntime=JeTF11.getText();
	 String pundesc=JeTF12.getText();
	 String punfun=JeTF13.getText();
     String d1="update chang set CHAN=(select a.CHAN from (select CHAN,CODE from chang,change_code where chang.CHAN=change_code.CODE AND chang_code.DSRPIN ="+changchan+" group by CHAN)as a),"
     +"REC_TIME ='"+changtime+"',"+"DSRPIN ='"+changedes+"' "		 
     +"where STUDENTID"+" = "+sql; 
	 System.out.println(d1);
 
	 String d2="update reward set LEVELS=(select b.LEVELS from (select LEVELS,CODE from reward,reward_levels where reward.LEVELS=reward_levels.CODE AND reward_levels.DSRPIN ='"+rew+"' group by LEVELS)as b),"
	 +"REC_TIME ='"+rewtime+"' ,"+"DSRPIN ='"+rewdesc+"' "
	 +"where STUDENTID"+" = "+sql;
	 System.out.println(d2);
	 
	 String d3="update punishment set LEVELS=(select c.LEVELS from(select LEVELS,CODE from punishment,punish_levels where punishment.LEVELS=punish_levels.CODE AND punish_levels.DSRPIN ='"+pun+"' group by LEVELS)as c),"
	 +"REC_TIME ='"+puntime+"',"+"DSRPIN ='"+pundesc+"' ,"+"ENABLE ='"+punfun+"' "
	 +"where STUDENTID"+" = "+sql;
	 System.out.println(d3);
 
	 
	 try {
     		dbProcess.connect();
     		dbProcess.sta=dbProcess.con.createStatement();
     		dbProcess.sta.execute(d1);
     		JeTF4.setText("");JeTF5.setText("");JeTF6.setText("");
	 	}
	catch(SQLException ex) { 
			System.err.println(ex.getMessage());
	}
		dbProcess.disconnect();
		
	 try {
		 	dbProcess.connect();
		 	dbProcess.sta=dbProcess.con.createStatement();
		 	dbProcess.sta.execute(d2);
		 	JeTF7.setText("");JeTF8.setText("");JeTF9.setText("");
		}
	catch(SQLException ex) { 
			System.err.println(ex.getMessage());
	}
		dbProcess.disconnect();
		
	try {
			 dbProcess.connect();
			 dbProcess.sta=dbProcess.con.createStatement();
			 dbProcess.sta.execute(d3);
			 JeTF10.setText("");JeTF11.setText("");JeTF12.setText("");JeTF13.setText("");
			}
		catch(SQLException ex) { 
				System.err.println(ex.getMessage());
		}
			dbProcess.disconnect();	
 }
 public void queryAllProcess()
	{
		try{
			// 建立查询条件
			String sql = "select * from student;";
			System.out.println("queryAllProcess(). sql = " + sql);
	
			dbProcess.connect();
			ResultSet rs = dbProcess.executeQuery(sql);
	

			// 将查询获得的记录数据,转换成适合生成JTable的数据形式
			studentVector.clear();
			while(rs.next()){
				Vector v = new Vector();
				v.add(Integer.valueOf(rs.getInt("STUDENTID")));
				v.add(rs.getString("NAME"));
				v.add(rs.getString("SEX"));
				v.add(Integer.valueOf(rs.getInt("CLASS")));
				v.add(Integer.valueOf(rs.getInt("DEPARTMENT")));
				v.add(rs.getString("BIRTHDAY"));
				v.add(rs.getString("NATIVE_PLACE"));
				studentVector.add(v);
			}
			
			studentJTable.updateUI();

			dbProcess.disconnect();
		}catch(SQLException sqle){
			System.out.println("sqle = " + sqle);
			JOptionPane.showMessageDialog(null,
				"数据操作错误","错误",JOptionPane.ERROR_MESSAGE);
		}
	}
    
 public void deleteCurrentRecordProcess()
	{
		String sNo = JeTF1.getText().trim();
		
		// 建立删除条件
		String sql = "delete from student where "+jCBSelectQueryFieldTransfer(SelectQueryFieldStr)+"='" + sNo + "';";
		System.out.println("deleteCurrentRecordProcess(). sql = " + sql);
		try{
			if (dbProcess.executeUpdate1(sql) < 1) {
				System.out.println("deleteCurrentRecordProcess(). delete database failed.");
			}
		}catch(Exception e){
			System.out.println("e = " + e);
			JOptionPane.showMessageDialog(null,
				"数据操作错误","错误",JOptionPane.ERROR_MESSAGE);
		}
		queryAllProcess();
	}

	public void deleteAllRecordsProcess()
	{
		// 建立删除条件
		String sql = "delete from student;";
		System.out.println("deleteAllRecordsProcess(). sql = " + sql);
		try{
			if (dbProcess.executeUpdate1(sql) < 1) {
				System.out.println("deleteAllRecordsProcess(). delete database failed.");
			}
		}catch(Exception e){
			System.out.println("e = " + e);
			JOptionPane.showMessageDialog(null,
				"数据操作错误","错误",JOptionPane.ERROR_MESSAGE);
		}
		queryAllProcess();
	}
	
	public String jCBSelectQueryFieldTransfer(String InputStr)
	{
		String outputStr = "";
		System.out.println("jCBSelectQueryFieldTransfer(). InputStr = " + InputStr);
		
		if(InputStr.equals("学号")){
			outputStr = "STUDENTID";
		}else if(InputStr.equals("姓名")){
			outputStr = "NAME";
		}else if(InputStr.equals("性别")){
			outputStr = "SEX";
		}else if(InputStr.equals("班级")){
			outputStr = "CLASS";
		}else if(InputStr.equals("院系")){
			outputStr = "DEPARTMENT";
		}else if(InputStr.equals("生日")){
			outputStr = "BIRTHDAY";
		}else if(InputStr.equals("住址")){
			outputStr = "NATIVE_PLACE";
		}
		System.out.println("jCBSelectQueryFieldTransfer(). outputStr = " + outputStr);
		return outputStr;
	}
 
	
}

功能实现:登录输入ID:root,密码123后跳转到系统页面

       PS: 需要注意的其他事项在https://blog.csdn.net/Zhongtongyi/article/details/105031058中有说明,如有问题可评论区留言。

这篇关于基于学生信息管理系统的数据库系统课程设计升级版(mysql)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!