数据库课设报告Word文档格式.docx
- 文档编号:22564919
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:30
- 大小:724.16KB
数据库课设报告Word文档格式.docx
《数据库课设报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库课设报告Word文档格式.docx(30页珍藏版)》请在冰豆网上搜索。
**学生转学(转入和转出),学生毕业等。
毕业和转学的学生有关信息存储到历史库中。
(2)系基本信息管理:
系的基本信息输入、修改、删除
(3)课程信息管理:
课程信息的输入、修改、删除
(4)教职工信息管理:
教职工信息的输入、修改、删除
(5)选课管理:
每学期所选课程的学分不能超过15分。
(创建触发器)
学生可以同时选修一门或多门课程。
可以同时为多个学生选修某一门或某几门课程。
删除和修改选课信息。
(6)成绩管理(视图)
按课程输入和修改成绩。
(查询选该门课程的学生)
按学生输入和修改成绩。
(查询该学生所选的课程)
(7)信息查询
按学号、姓名、系号查询学生基本信息。
按职工号、姓名、系号查询教职工基本信息。
按系号、系名称查询系的基本信息。
按课程号、课程名称、上课教师姓名查询课程基本信息。
按学号、学生姓名、课程号、课程名称、上课教师姓名、系号查询学生成绩,内容包括课程基本情况。
若查询涉及多门课程,则按课程分组。
每门课程按总评成绩从高分到低分给出选修该门课程的所有学生的成绩(平时成绩、考试成绩和总评成绩)。
(8)统计报表
成绩登记表,内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间)、选课学生名单(学号、姓名、性别),每个学生的平时成绩(空格)、考试成绩(空格)和总评成绩(空格),按学号排序:
顺序输出所有课程的成绩登记表。
按课程号、课程名称、教师姓名输出对应课程的成绩登记表。
**按系号输出对应课程的成绩登记表(本系所有教师担任的课程)。
成绩报表,内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间),选课学生名单(学号、姓名、性别),每个学生的平时成绩、考试成绩和总评成绩,>
=90分、>
=80分、、>
=70分、>
=60分及不及格学生的人数及比例,按学号排序:
顺序输出所有课程的成绩报表。
(报表格式自己订制,可以参考学校的系统的输出格式)
按课程号、课程名称、教师姓名输出对应课程的成绩报表。
**按系号输出对应课程的成绩报表(本系所有教师担任的课程)
功能模块
以管理员模式管理各个部分的功能
学生信息:
信息的查询、插入、修改、删除
教师信息:
系的信息:
课程信息:
信息的查询、插入、修改、删除
成绩信息管理:
选课管理:
课程的选择、修改、删除
信息查询:
按学号、姓名、课程号、教师姓名、系号等查询学生成绩
统计报表:
概念结构设计
表的设计
CREATETABLEDepart
(
Depart_nochar(8)NOTNULLPRIMARYKEY,
Depart_namechar(15),
Depart_Jianjievarchar(120)
)
--插入数据
insertintoDepart
values('
02'
'
英语系'
成立于1985年,现有三个专业'
01'
计算机系'
成立于1980年,现有三个专业'
CREATETABLEStudent
SnoCHAR(8)NOTNULLPRIMARYKEY,
Snamevarchar(6)NOTNULL,
Sexchar(4),
Sbirthint,
Enter_scorchar(8),
Depart_nochar(8)FOREIGNKEYREFERENCESDepart(Depart_no)ondeletecascadeonupdatecascade,
INSERTINTOStudent
values('
2008304'
谭丽'
女'
19880706'
70'
CREATETABLETeacher
Teacher_nochar(8)NOTNULLPRIMARYKEY,
Teacher_namevarchar(6)NOTNULL,
Teacher_birthint,
ZhiChengchar(10),
ZhuanYechar(20)
INSERTINTOTeacher
--values('
1002'
徐绽'
19800203'
教授'
英语'
1001'
王明'
男'
19800504'
CREATETABLECourse
Cnochar(8)NOTNULLPRIMARYKEY,
Cnamechar(20),
Teacher_nochar(8)NOTNULLFOREIGNKEYREFERENCESTeacher(Teacher_no)ondeletecascadeonupdatecascade,
XueShiint,
Ccriditsmallint,
ShangKe_Timechar(10),
ShangKe_Placevarchar(20),
KaoShi_Timechar(30),
insertintoCourse
计算机文化基础'
40'
2'
18:
00'
3#101'
2010/6/3/8:
CREATETABLEGrade
SnoCHAR(8)NOTNULLFOREIGNKEYREFERENCESStudent(Sno)ondeletecascadeonupdatecascade,
CnoCHAR(8)NOTNULLFOREIGNKEYREFERENCESCourse(Cno)ondeletenoactiononupdatenoaction,
PingShi_scoreint,
KaoShi_scoreint,
Sum_scoreint,
PRIMARYKEY(Sno,Cno)
insertintoGrade
10'
80'
CreateViewGrade_Course(Sno,Cno,Cname,Ccridit)
AS
selectGrade.Sno,Grade.Cno,Cname,Ccridit
fromGrade,Course
whereGrade.Cno=Course.Cno
CREATETRIGGERCridit_Check
ONGrade
FORINSERT
declare@iint,@Snochar(8)
select@Sno=Sno
Frominserted
select@i=sum(Ccridit)
fromGrade_Course
whereGrade_Course.Sno=@Sno
if(@i>
15)
begin
ROLLBACKTRANSACTION
RAISERROR('
你选修的学分大于15学分,请确认后选课'
16,1)END
表的关系图
程序的部分代码
学生模块代码:
SqlConnectionconn=newSqlConnection();
conn.ConnectionString="
datasource=(local);
initialcatalog=Teach_Mange;
integratedsecurity=true"
;
conn.Open();
stringstrCmd;
if(textBox2.Text=="
"
{
MessageBox.Show("
请输入学号!
"
提示"
);
textBox2.Focus();
}
elseif(textBox3.Text=="
请输入姓名!
elseif(textBox4.Text=="
请输入性别!
elseif(textBox5.Text=="
请输入出生日期!
elseif(textBox6.Text=="
请输入入学成绩!
elseif(textBox7.Text=="
请输入所在系号!
strCmd="
insertintoStudent(Sno,Sname,Sex,Sbirth,Enter_scor,Depart_no)values('
+textBox2.Text+"
'
+textBox3.Text+"
+textBox4.Text+"
+textBox5.Text+"
+textBox6.Text+"
+textBox7.Text+"
SqlCommandMyCommand=newSqlCommand(strCmd,conn);
MyCommand.ExecuteNonQuery();
MyCommand.Dispose();
conn.Close();
插入成功!
privatevoidbutton4_Click(objectsender,EventArgse)
SqlConnectionconn=newSqlConnection();
stringstrCmd1,strCmd2;
strCmd2="
updateStudentsetSname='
Sex='
Sbirth='
Enter_scor='
Depart_no='
whereSno='
strCmd1="
selectSnofromStudentwhereSno='
SqlCommandMyCommand1=newSqlCommand(strCmd1,conn);
objectob=MyCommand1.ExecuteScalar();
if(Convert.ToString(ob)=="
if(textBox2.Text!
="
无此学号的学生信息!
\n请重新输入!
textBox2.Text="
MyCommand1.Dispose();
return;
SqlCommandMyCommand2=newSqlCommand(strCmd2,conn);
MyCommand2.ExecuteNonQuery();
MyCommand2.Dispose();
修改成功!
privatevoidbutton1_Click(objectsender,EventArgse)
stringsqlstr="
stringChaXun="
objectn=comboBox1.SelectedItem;
ChaXun=comboBox1.GetItemText(n);
if(ChaXun=="
请选择查询条件再进行查询"
elseif(ChaXun=="
按学号查询"
if(textBox1.Text=="
请输入查询条件:
学号!
按姓名查询"
姓名!
sqlstr="
Sno='
+textBox1.Text+"
select*fromStudentwhere"
+sqlstr;
SqlCommandcmd=newSqlCommand(strCmd,conn);
objectn1=cmd.ExecuteScalar();
if(Convert.ToString(n1)=="
if(textBox1.Text!
textBox1.Text="
cmd.Dispose();
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
textBox2.Text=sdr["
Sno"
].ToString();
textBox3.Text=sdr["
sname"
textBox4.Text=sdr["
Sex"
textBox5.Text=sdr["
Sbirth"
textBox6.Text=sdr["
Enter_scor"
textBox7.Text=sdr["
Depart_no"
sdr.Close();
SqlDataAdaptersdr0=newSqlDataAdapter(strCmd,conn);
DataTabletable=newDataTable();
sdr0.Fill(table);
dataGridView1.DataSource=table;
Sname='
objectn2=cmd.ExecuteScalar();
if(Convert.ToString(n2)=="
无此姓名的学生信息!
按系号查询"
Depart_no='
无此系的学生信息!
privatevoidbutton3_Click(objectsender,EventArgse)
deletefromStudentwhereSno='
textBox2.Focus()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 报告