5.2
写一个使用JDBC元数据特性的Java函数,该函数用ResultSet
作为输入参数,并且把结果输出为合适的名字作为列名的表格形式。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19public void HandleResultSet(ResultSet Search_result){
ResultSet result = Search_result;
ResultSetMetaData metadata = result.getMetaData();
int ncols = metadata.getColumnCount();
// 输出列名
for(int i = 1; i <= ncols; i++) {
System.out.print(metadata.getColumnName(i) + " ");
}
System.out.println();
// 输出数据结果
for(;result.next();) {
for(int i = 1; i <= ncols; i++) {
System.out.print(result.getString( metadata.getColumnName(i) + " "));
}
System.out.println();
}
}
5.4
说明如何用触发器来保证约束“一位教师不可能在一个学期的同一个时间段在不同的教室里教课”。(要知道,对teachers或者section的改变都可能使该约束被破坏)
当section发生变化时,只需查看该老师在同一时间是否同时出现在两个不同的课室中即可
1 | create trigger teacher_check after insert on section |
当teachers发生变化时,同样只需查看该老师在同一时间是否同时出现在两个不同的课室中即可
1 | create trigger teacher_check after insert on teachers |