?? classlession_operation.java
字號:
package lessionman;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import db.dbconn;
public class classlession_operation {
/**
* 功能:得到所有錄入了成績的班級與課程數據
* 輸入:class_id為班級ID號,lession_id為課程ID號
* 輸出:有成績的班級與課程數據記錄集
*/
public ResultSet getCoreClassLessionRs(int class_id,int lession_id){
String sqlString=null;//SQL語句字符串
Statement sql=null;//SQL語句對象
ResultSet rs=null;//結果記錄集
dbconn dbconnOBject=new dbconn();//數據庫連接對象
Connection dbconn=dbconnOBject.getDBConn();//得到數據庫連接
if(dbconn==null) return null;//連接失敗
sqlString="select distinct core.lession_id as lession_id," +
"class.class_name as class_name,student.class_id as class_id," +
"lession.lession_name from core,student,lession,class" +
" where core.student_id=student.student_id and" +
" student.class_id=class.class_id and lession.lession_id=core.lession_id";
if(class_id!=0)
sqlString=sqlString+" and student.class_id="+class_id+"" +
" and class.class_id="+class_id;
if(lession_id!=0)
sqlString=sqlString+" and lession.lession_id="+lession_id+"" +
" and core.lession_id="+lession_id;
sqlString=sqlString+" order by class_id";
try{
sql=dbconn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=sql.executeQuery(sqlString);
}catch(Exception e){
System.out.println(e);
}
return rs;
}
/**
* 功能:得到班級的某課程的封存狀態
* 輸入:class_id為班級ID號,lession_id為課程ID號
* 輸出:封存狀態字符串
* 提示:只在班級的所有學生的成績都得到封存才算是成功封存狀態
*/
public String getClassLessionCloseStatus(int class_id,int lession_id){
String returnString=new String("");
String sqlString=null;//SQL語句字符串
Statement sql=null;//SQL語句對象
ResultSet rs=null;//結果記錄集
dbconn dbconnOBject=new dbconn();//數據庫連接對象
Connection dbconn=dbconnOBject.getDBConn();//得到數據庫連接
if(dbconn==null) return returnString;//連接失敗
if(class_id==0||lession_id==0)//輸入參數不合法
return returnString;
sqlString="select distinct core.lession_id as lession_id,student.class_id as class_id," +
"core.close_status as close_status from core,student " +
"where core.student_id=student.student_id and student.class_id="+class_id+
" and core.lession_id="+lession_id;
try{
sql=dbconn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=sql.executeQuery(sqlString);
rs.last();
int rowCount=rs.getRow();
rs.beforeFirst();
switch(rowCount){
case 0:
returnString="沒有此班級此課程的成績數據";break;
case 1://查到一條記錄,從字段中取狀態
rs.next();
switch(rs.getInt("close_status")){
case 0:
returnString="未封存";break;
case 1:
returnString="已封存";break;
case 2:
returnString="部分封存";break;
default:
returnString="未知";break;
}
break;
case 2://查到2條,說明封存未完全
returnString="部分封存";break;
default:
returnString="未知";break;
}
}catch(Exception e){
System.out.println(e);
returnString="未知";
}
return returnString;
}
/**
* 功能:置某班某課程的狀態為封存
* 輸入:class_id為班級ID號,lession_id為課程ID號
* 輸出:返回1表成功,返回2表數據連接參數配置不正確或連接數據庫失敗或數據庫操作失敗,
* 返回4表輸入參數不正確;
*/
public int classLessionCloseSave(int class_id,int lession_id){
String sqlString=null;//SQL語句字符串
Statement sql=null;//SQL語句對象
ResultSet rs=null;//結果記錄集
dbconn dbconnOBject=new dbconn();//數據庫連接對象
Connection dbconn=dbconnOBject.getDBConn();//得到數據庫連接
if(dbconn==null) return 2;//連接失敗
if(class_id==0||lession_id==0)//輸入參數不合法
return 4;
//-------更新狀態為封存----------
sqlString="update core set close_status=1" +
" where lession_id=? and student_id in" +
" (select student_id from student where class_id=?)";
try{
PreparedStatement preSQLUpdate=dbconn.prepareStatement(sqlString);
preSQLUpdate.setInt(1,lession_id);
preSQLUpdate.setInt(2,class_id);
preSQLUpdate.executeUpdate();
return 1;
}catch(Exception e){
System.out.print(e);
return 2;
}
}
/**
* 功能:置某班某課程的狀態為解封
* 輸入:class_id為班級ID號,lession_id為課程ID號
* 輸出:返回1表成功,返回2表數據連接參數配置不正確或連接數據庫失敗或數據庫操作失敗,
* 返回4表輸入參數不正確;
*/
public int classLessionOpenSave(int class_id,int lession_id){
String sqlString=null;//SQL語句字符串
Statement sql=null;//SQL語句對象
ResultSet rs=null;//結果記錄集
dbconn dbconnOBject=new dbconn();//數據庫連接對象
Connection dbconn=dbconnOBject.getDBConn();//得到數據庫連接
if(dbconn==null) return 2;//連接失敗
if(class_id==0||lession_id==0)//輸入參數不合法
return 4;
//-------更新狀態為解封----------
sqlString="update core set close_status=0" +
" where lession_id=? and student_id in" +
" (select student_id from student where class_id=?)";
try{
PreparedStatement preSQLUpdate=dbconn.prepareStatement(sqlString);
preSQLUpdate.setInt(1,lession_id);
preSQLUpdate.setInt(2,class_id);
preSQLUpdate.executeUpdate();
return 1;
}catch(Exception e){
System.out.print(e);
return 2;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -