版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流广工数据库课程设计.精品文档.教师信息管理系统题目名称 专业班级 学 号 学生姓名 指导教师 2016 年 3 月 26 日一、实验环境硬件环境:处理器: Intel(R) Core(TM) i5-3230M CPU 2.60FHz 2.60GHz已安装的内存(RMA): 4.00GB软件环境 操作系统: Windows 10数据库管理系统: SQL Server 2008开发工具: Eclipse二、需求分析信息需求教师信息(职工号,教师姓名,年龄,性别)课程信息(课程号,课程名,学分)课程评价信息(职工号,课程号,等级)奖金信息
2、(序号,等级,奖金)用户信息(登录名,密码,用户组)功能需求1. 教师用户: (1)对教师信息、课程信息、课程评价、奖金信息的查询。2. 管理员 (1)对教师信息、课程信息、课程评价的查询,修改,增加,删除; (2)对教师的奖金等信息的查询,修改。安全性与完整性需求1. 不同的身份有不同的功能权限。2.实体完整性:通过设置主键都已实现。数据字典该软件的数据库由下述信息组成:1. 教师信息字段字段名类型宽度说明1职工号 Int型2教师姓名 字符型103年龄 Int型大于等于18且小于等于654性别 字符型2男或女2.课程信息字段字段名类型宽度说明1课程号 Int型2课程名 字符型163学分 In
3、t型3. 课程评价信息字段字段名类型宽度说明1职工号 Int型2课程号 Int型3等级 字符型2优,良,中,差4. 奖金信息字段字段名类型宽度说明1序号 Int型2等级 字符型2优,良,中,差3奖金 Int型5. 用户信息字段字段名类型宽度说明1登录名 字符型82密码 Int型3用户组 字符型6三、概念结构设计1. 教师信息实体2. 课程实体3. 课程评价实体4. 奖金实体5. 用户实体概念模型:E-R图四、逻辑结构设计关系模型教师信息表(职工号,教师姓名,年龄,性别),其主码为职工号。课程表(课程号,课程名,学分),其主码为课程号。课程评价表(职工号,课程号,等级),其主码为职工号与课程号。
4、奖金表(序号,等级,奖金),其主码为序号。用户表(登录名,密码,用户组),其主码为登录名。用户子模式应用程序功能模块图安全性该系统的用户只有两种,一种是管理员,另一种是教师,管理员具有对数据库操作的所有权限,教师只有对教师的信息、课程信息、课程评价、奖金信息的查询权限。完整性实体完整性:通过设置主键都已实现。参照完整性:课程评价表中的职工号和课程号分别参照教师信息表中的职工号和课程表中的课程号。用户自定义完整性:教师信息表中的年龄必须在18到60之间,性别必须为男、女,课程评价表和奖金表中的等级必须为优、良、中、差。五、数据库物理设计数据的存放位置说明D:Program Files Micro
5、soft SQL Server MSSQL10_50.SQLEXPRESSMSSQLDATA系统配置说明使用登录名:sa 登陆密码:123 登陆SQL Server 2008模块设计(模块IPO图)六、数据库实施1.创建教师信息表CREATE TABLE 教师信息表 (职工号 INT NOT NULL PRIMARY KEY, 教师姓名 CHAR(10), 年龄 INT CHECK(年龄>=18 AND 年龄<=60), 性别 CHAR(2) CHECK(性别 IN('男','女')2. 创建课程表CREATE TABLE 课程表 (课程号 INT
6、NOT NULL PRIMARY KEY, 课程名 CHAR(16), 学分 INT3. 创建课程评价表CREATE TABLE 课程评价表 (职工号 INT, 课程号 INT, 等级 CHAR(2) CHECK(等级 IN('优','良','中','差'), PRIMARY KEY(职工号,课程号), FOREIGN KEY (职工号) REFERENCES 教师信息表(职工号), FOREIGN KEY (课程号) REFERENCES 课程表(课程号)4. 创建奖金表CREATE TABLE 奖金表 (等级 CHAR(2)
7、CHECK(等级 IN('优','良','中','差') PRIMARY KEY, 奖金 INT5. 创建用户表CREATE TABLE 用户表 (登录名 CHAR(8) NOT NULL PRIMARY KEY, 密码 INT, 用户组 CHAR(6)6. 各表元组INSERT INTO 教师信息表 VALUES(201501,'翁嘉民',20,'男')INSERT INTO 教师信息表 VALUES(201502,'陈天翔',19,'男')INSERT INTO
8、教师信息表 VALUES(201503,'周诗妍',21,'女')INSERT INTO 教师信息表 VALUES(201504,'宋嘉莹',20,'女')INSERT INTO 课程表 VALUES(100,'语文',5)INSERT INTO 课程表 VALUES(101,'数学',5)INSERT INTO 课程表 VALUES(102,'英语',4)INSERT INTO 课程表 VALUES(103,'物理',3)INSERT INTO 课程表 VALUES
9、(104,'化学',3)INSERT INTO 课程表 VALUES(105,'生物',3)INSERT INTO 课程表 VALUES(106,'地理',3)INSERT INTO 课程表 VALUES(107,'历史',3)INSERT INTO 课程表 VALUES(108,'政治',3)INSERT INTO 课程评价表 VALUES(201501,100,'优')INSERT INTO 课程评价表 VALUES(201501,107,'良')INSERT INTO 课程评价
10、表 VALUES(201501,108,'优')INSERT INTO 课程评价表 VALUES(201502,101,'良')INSERT INTO 课程评价表 VALUES(201502,103,'良')INSERT INTO 课程评价表 VALUES(201502,106,'优')INSERT INTO 课程评价表 VALUES(201503,102,'中')INSERT INTO 课程评价表 VALUES(201503,105,'良')INSERT INTO 课程评价表 VALUES(201
11、503,107,'优')INSERT INTO 课程评价表 VALUES(201504,104,'良')INSERT INTO 课程评价表 VALUES(201504,105,'优')INSERT INTO 课程评价表 VALUES(201504,106,'良')INSERT INTO 奖金表 VALUES('1','优',8000)INSERT INTO 奖金表 VALUES('2','良',4000)INSERT INTO 奖金表 VALUES('3
12、9;,'中',2000)INSERT INTO 奖金表 VALUES('4','差',0)INSERT INTO 用户表 VALUES('admin',123,'管理员')INSERT INTO 用户表 VALUES('admin2',456,'管理员')7、 数据库运行和维护主要窗口截图主要代码1. 数据库的连接Connection con=null;StringJ Driver="com.microsoft.sqlserver.jdbc.SQLServerDriver&
13、quot;/SQL数据库引擎String connectDB="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=Teacher"/数据源注意IP地址和端口号,数据库名字 Teacher为数据库名try Class.forName(JDriver);/加载数据库引擎,返回给定字符串名的类catch(ClassNotFoundException e)/e.printStackTrace();System.out.println("加载数据库引擎失败");System.exit(0);tryString user=&qu
14、ot;sa"/你自己创建的用户名字和密码String password="fuxiao456" con=DriverManager.getConnection(connectDB,user,password);/连接数据库对象Statement stmt=con.createStatement();/创建SQL命令对象/关闭连接stmt.close();/关闭命令对象连接con.close();/关闭数据库连接catch(SQLException e)e.printStackTrace();/System.out.println("数据库连接错误&quo
15、t;);System.exit(0);2. 更新函数public static void function10(String id17,String id18,String id19,Connection con) int a = 0;try String sql = "update 课程评价表 set 等级=? where 职工号=? and 课程号=?"PreparedStatement stmta = con.prepareStatement(sql); /执行SQL语句stmta.setString(1, id19); /用id27的字符串代替SQL语句中的第一个?
16、stmta.setString(2, id17); /用id27的字符串代替SQL语句中的第二个?stmta.setString(3, id18); /用id27的字符串代替SQL语句中的第三个?a=stmta.executeUpdate(); /将受影响的行数赋值给acatch (Exception e) if(a=1) System.out.println("修改成功"); /通过受影响的行数来判断SQL语句是否执行成功if(a=0) System.out.println("修改失败");3. 增加函数public static void funct
17、ion11(String id20,String id21,String id22,Connection con) int a = 0;try String sql = "insert into 课程评价表 values(?,?,?)"PreparedStatement stmta = con.prepareStatement(sql); /执行SQL语句 stmta.setString(1, id20); /用id20的字符串代替SQL语句中的第一个?stmta.setString(2, id21); /用id21的字符串代替SQL语句中的第一个?stmta.setStr
18、ing(3, id22); /用id22的字符串代替SQL语句中的第一个? a=stmta.executeUpdate(); /将受影响的行数赋值给acatch (Exception e) if(a=1) System.out.println("插入成功"); /通过受影响的行数来判断SQL语句是否执行成功if(a=0) System.out.println("插入失败");4. 连接查询public static void function15(String id27,Connection con) try String sql = "sel
19、ect 教师信息表.职工号,教师信息表.教师姓名,课程名,学分,奖金表.等级,奖金 from 教师信息表,课程表,课程评价表,奖金表 where 教师信息表.职工号=课程评价表.职工号 and 课程表.课程号=课程评价表.课程号 and 课程评价表.等级=奖金表.等级 and 教师信息表.职工号=?"PreparedStatement stmta = con.prepareStatement(sql); /执行SQL语句stmta.setString(1, id27); /用id27的字符串代替SQL语句中的第一个?ResultSet rs = stmta.executeQuery(
20、); System.out.println("职工号"+"t"+"教师姓名"+"t"+"课程名"+"t"+"学分"+"t"+"等级"+"t"+"奖金");while (rs.next() /输出选择结果System.out.println(rs.getString("职工号")+"t"+rs.getString("教师姓名&qu
21、ot;)+"t"+rs.getString("课程名")+rs.getString("学分")+"t"+rs.getString("等级")+"t"+rs.getString("奖金");catch (Exception e) 5. 分组求和public static void function19(Connection con) try String sql = "select 教师信息表.职工号,教师信息表.教师姓名,sum(奖金) as 总奖金 from 教师信息表,课程评价表,奖金表 where 教师信息表.职工号=课程评价表.职工号 and 课程评价表.等级=奖金表.等级 group by 教师信息表.教师姓名,教师信息表.职工号"PreparedStatement stmta = con.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
 - 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
 - 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
 - 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
 - 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
 - 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
 - 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
 
最新文档
- 项目管理决策分析工具及应用
 - 2025年注册计量师(一级)考试试题及答案
 - 2025年(初级)消防设施操作员考试题库及答案
 - 初中语文上册重点知识归纳总结
 - 2025-2026学年辽宁省辽西重点高中高二上学期开学考试化学试题
 - 超声科甲状腺超声检查操作技巧
 - 美甲店节日促销方案与执行细则
 - 建设工程施工管理实践考核指导
 - 2025年及未来5年中国开关稳压电源供应器行业市场全景分析及投资前景展望报告
 - 2025年及未来5年中国智能托管行业投资研究分析及发展前景预测报告
 - 市政管道工程项目突发公共事件应急预案
 - 完整道德经全文电子版下载
 - 2025年上海教师考试真题及答案
 - 施工员的考试题目及答案
 - 2025年玻璃幕墙清洗合同协议
 - 苏教版八年级数学上册期中考试试卷及答案
 - 2025年劳动法试卷试题包括答案
 - 2025年净水处理技术研发项目可行性研究报告
 - 2025-2030多动症非药物干预方法临床效果与市场接受度调查
 - 社区安全生产内容宣讲
 - 2025至2030全球及中国电子级六氟乙烷行业发展趋势分析与未来投资战略咨询研究报告
 
            
评论
0/150
提交评论