📄 managerpanel.java
字号:
//查询课程信息界面监听 //查询课程信息界面监听 //查询课程信息界面监听
if(selected == 12)
{
if(e.getSource() == queryButton) //查询按钮
{
try
{
if(courseNumTextField.getText().equals( "" ))
{
JOptionPane.showMessageDialog(ManagerPanel.this,"请填好课程号" );
//setTitle( "无记录显示" );
return;
}
insertQuery = "SELECT * FROM 课程信息表 WHERE 课程号 = '"
+ courseNumTextField.getText()+"'";
inputGrade();
}
catch(SQLException ee)
{
JOptionPane.showMessageDialog (ManagerPanel.this ,ee ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
if(e.getSource() == resetButton) //继续按钮
{
courseNumTextField.setText(null);
courseNameTextField.setText(null);
periodTextField.setText(null);
creditHourTextField.setText(null);
termTextField.setText(null);
teaTextField.setText(null);
}
}
//删除课程信息界面监听 //删除课程信息界面监听 //删除课程信息界面监听
if(selected == 13)
{
if(e.getSource() == delButton) //删除按钮
{
try
{
if(courseNumTextField.getText().equals( "" ))
{
JOptionPane.showMessageDialog( ManagerPanel.this, "请填好要删除教师的帐户!" );
//setTitle( "无记录显示" );
return;
}
insertQuery = "SELECT * FROM 课程信息表 WHERE 课程号= '" + courseNumTextField.getText()+"'";
insertUpdate = "DELETE FROM 课程信息表 WHERE 课程号='" + courseNumTextField.getText()+"'";
inputGrade();
}
catch(SQLException ee)
{
JOptionPane.showMessageDialog (ManagerPanel.this, ee ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
if(e.getSource() == resetButton) //继续按钮
{
courseNumTextField.setText(null);
}
}
//更新学生成绩 //更新学生成绩 //更新学生成绩 //更新学生成绩
if(selected == 14)
{
if(e.getSource() == insertButton) //更新按钮
{
try
{
if(stuNumTextField.getText().equals( "" )
|| courseNumTextField.getText().equals( "" )
|| gradeTextField.getText().equals( "" ))
{
JOptionPane.showMessageDialog(ManagerPanel.this,"请填好成绩记录" );
//setTitle( "无记录显示" );
return;
}
insertQuery = "SELECT 学号,课程号 FROM 成绩表 WHERE 学号 = '"
+ stuNumTextField.getText()+"' AND 课程号='"
+ courseNumTextField.getText() + "'";
insertUpdate = "UPDATE 成绩表 SET 分数=" + gradeTextField.getText()
+ " WHERE 学号='" + stuNumTextField.getText()
+ "' AND 课程号='" + courseNumTextField.getText() + "'";
inputGrade();
}
catch(SQLException ee)
{
JOptionPane.showMessageDialog (ManagerPanel.this ,ee ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
if(e.getSource() == resetButton) //继续按钮
{
stuNumTextField.setText(null);
courseNumTextField.setText(null);
gradeTextField.setText(null);
}
}
//查询学生成绩 //查询学生成绩 //查询学生成绩 //查询学生成绩
if(selected == 15)
{
if(e.getSource() == queryButton) //查询按钮
{
try
{
if(stuNumTextField.getText().equals( "" )
|| courseNumTextField.getText().equals( "" ))
{
JOptionPane.showMessageDialog(ManagerPanel.this,"请填写完整学号和课程号!" );
//setTitle( "无记录显示" );
return;
}
insertQuery = "SELECT 分数 FROM 成绩表 WHERE 学号 = '"
+ stuNumTextField.getText()
+ "' AND 课程号='" + courseNumTextField.getText()+"'";
inputGrade();
}
catch(SQLException ee)
{
JOptionPane.showMessageDialog (ManagerPanel.this ,ee ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
if(e.getSource() == resetButton) //继续按钮
{
stuNumTextField.setText(null);
courseNumTextField.setText(null);
gradeTextField.setText(null);
}
}
//删除学生成绩 //删除学生成绩 //删除学生成绩 //删除学生成绩
if(selected == 16)
{
if(e.getSource() == delButton) //删除按钮
{
try
{
if(stuNumTextField.getText().equals( "" )
||courseNumTextField.getText().equals( "" ))
{
JOptionPane.showMessageDialog(ManagerPanel.this, "请填写完整学号和课程号!" );
//setTitle( "无记录显示" );
return;
}
insertQuery = "SELECT 学号,课程号 FROM 成绩表 WHERE 学号 = '"
+ stuNumTextField.getText()+"' AND 课程号='"
+ courseNumTextField.getText()+"'";
insertUpdate = "DELETE FROM 成绩表 WHERE 学号='"+stuNumTextField.getText()+
"' AND 课程号='"+courseNumTextField.getText()+"'";
inputGrade();
}
catch(SQLException ee)
{
JOptionPane.showMessageDialog (ManagerPanel.this ,ee ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
if(e.getSource() == resetButton) //继续按钮
{
stuNumTextField.setText(null);
courseNumTextField.setText(null);
}
}
//统计学生成绩 //统计学生成绩 //统计学生成绩 //统计学生成绩
if(selected == 17)
{
if(e.getSource() == confirmButton)
{
if(byTotalButton.isSelected())
{
query = "SELECT '学号'=成绩表.学号,'姓名'=姓名,'总分'=SUM(分数),'平均分'=AVG(分数) "
+"FROM 学生基本信息表,成绩表 WHERE 学生基本信息表.学号=成绩表.学号"
+" GROUP BY 成绩表.学号,姓名 ORDER BY SUM(分数) DESC";
}
if(byAverageButton.isSelected())
{
query = "SELECT '学号'=成绩表.学号,'姓名'=姓名,'总分'=SUM(分数),'平均分'=AVG(分数) "
+"FROM 学生基本信息表,成绩表 WHERE 学生基本信息表.学号=成绩表.学号"
+" GROUP BY 成绩表.学号,姓名 ORDER BY AVG(分数) DESC";
}
getTable(query); //建立表格
}
}
}
//下面两个是修改密码所用的似有方法
private void inquestPass() throws SQLException
{
loginUserName = LoginFrame.myTextField.getText();
oldPassword = new String(oldPasswordField.getPassword());
insertQuery="SELECT * FROM 管理员 WHERE 用户名='"
+ loginUserName + "' AND 密码='" + oldPassword + "'";
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException cnfe){}
con=DriverManager.getConnection(url, username, password);
stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(insertQuery);
boolean moreRecords=rs.next();
if(!moreRecords)
{
JOptionPane.showMessageDialog(ManagerPanel.this, "请输入当前使用的密码", "警告", JOptionPane.WARNING_MESSAGE);
con.close();
return;
}
else
try
{
updatePass();
}
catch ( SQLException sqlex )
{
JOptionPane.showMessageDialog (ManagerPanel.this,"你输入的数据类型不匹配或长度超出了\n" +
"允许的长度,请重新输入或联系管理员!",
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
//也是修改密码所用方法
private void updatePass() throws SQLException
{
String newpassword = new String(newPasswordField.getPassword());
insertUpdate = "UPDATE 管理员 SET 密码='" + newPassword +
"' WHERE 用户名='" + loginUserName + "'";
int insert = stmt.executeUpdate( insertUpdate ); //executeUpdate返回一个整型值
if (insert >=1)
{
JOptionPane.showMessageDialog( ManagerPanel.this,"密码修改成功!" );
}
con.close();
}
}
//录入学生或课程信息所用方法 录入学生或课程信息所用方法 录入学生或课程信息所用方法
public void inputStudent() throws SQLException
{
//加载驱动程序以连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection(url,username,password);
}
//捕获加载驱动程序异常
catch ( ClassNotFoundException cnfex )
{
System.err.println("装载 JDBC/ODBC 驱动程序失败。" );
//cnfex.printStackTrace();
JOptionPane.showMessageDialog ( ManagerPanel.this ,cnfex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
System.exit( 1 ); // terminate program
}
//捕获连接数据库异常
catch ( SQLException sqlex )
{
System.err.println( "无法连接数据库" );
JOptionPane.showMessageDialog (ManagerPanel.this,sqlex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
System.exit( 1 ); // terminate program
}
try
{
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery( insertQuery );
boolean moreRecords = rs.next();
if ( moreRecords )
{
JOptionPane.showMessageDialog(ManagerPanel.this,"对不起,此记录已使用,请重新输入" );
//setTitle( "无记录显示" );
con.close();
return;
}
int insert = stmt.executeUpdate( insertUpdate );//executeUpdate返回一个整型值
if (insert == 1)
{
JOptionPane.showMessageDialog(ManagerPanel.this,"信息录入成功!" );
}
}
catch ( SQLException sqlex )
{
JOptionPane.showMessageDialog (ManagerPanel.this ,sqlex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
}
}
//修改信息所用方法 修改信息所用方法 修改信息所用方法
public void inputGrade() throws SQLException
{
//加载驱动程序以连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection(url,username,password);
}
//捕获加载驱动程序异常
catch ( ClassNotFoundException cnfex )
{
System.err.println("装载 JDBC/ODBC 驱动程序失败。" );
//cnfex.printStackTrace();
JOptionPane.showMessageDialog (ManagerPanel.this, cnfex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
System.exit( 1 ); // terminate program
}
//捕获连接数据库异常
catch ( SQLException sqlex )
{
System.err.println( "无法连接数据库" );
//sqlex.printStackTrace();
JOptionPane.showMessageDialog (ManagerPanel.this ,sqlex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
System.exit( 1 ); // terminate program
}
try
{
stmt = con.createStatement();
/*--------------------------执行录入------------------------*/
ResultSet rs = stmt.executeQuery( insertQuery );
boolean moreRecords = rs.next();
if (! moreRecords )
{
//修改 学生 或 教师 或 课程 或 成绩信息失败调用
if(selected ==3 || selected == 7 || selected == 11 || selected == 14)
{
JOptionPane.showMessageDialog( ManagerPanel.this, "对不起,该记录不存在,请重新输入" );
con.close();
return;
}
if(selected == 4) //查询学生信息失败调用
{
String warning="该帐号不存在!";
JOptionPane.showMessageDialog(ManagerPanel.this, warning,"警告", JOptionPane.WARNING_MESSAGE);
stuNumTextField.setText(null);
stuNameTextField.setText(null);
sexTextField.setText(null);
majorTextField.setText(null);
birthTextField.setText(null);
heightTextField.setText(null);
passwordTextField.setText(null)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -