数据库实验七河南工业大学

合集下载

数据库实验实验报告

数据库实验实验报告

一、实验目的1. 熟悉数据库的基本概念和结构。

2. 掌握数据库的创建、修改和删除操作。

3. 熟练运用SQL语言进行数据的查询、插入、更新和删除操作。

4. 了解数据库的安全性和备份与恢复。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 创建数据库2. 创建表3. 插入数据4. 查询数据5. 更新数据6. 删除数据7. 修改表结构8. 删除表9. 数据库备份与恢复四、实验步骤1. 创建数据库(1)打开MySQL Workbench,连接到本地MySQL服务器。

(2)在“查询”窗口中输入以下SQL语句创建数据库:```sqlCREATE DATABASE student;```(3)执行SQL语句,创建名为student的数据库。

2. 创建表(1)在“查询”窗口中输入以下SQL语句创建学生表:```sqlCREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(50),age INT,gender VARCHAR(10));```(2)执行SQL语句,创建名为student的表。

3. 插入数据(1)在“查询”窗口中输入以下SQL语句插入数据:```sqlINSERT INTO student (id, name, age, gender) VALUES (1, '张三', 20, '男'); INSERT INTO student (id, name, age, gender) VALUES (2, '李四', 21, '男'); INSERT INTO student (id, name, age, gender) VALUES (3, '王五', 22, '女'); ```(2)执行SQL语句,向student表中插入三条数据。

河南工业大学机场数据库管理系统课程设计

河南工业大学机场数据库管理系统课程设计

河南工业大学机场数据库管理系统课程设计
现在人们更多地使用飞机作为出行交通工具,因此机票票务市场
也在快速发展.人们希望机票销售手段也能相应,地有所调整,并对如何能经济、方便和及时地购买到自己所需要地机票表现出极大地关注.随着社会地不断进步,国内外航空事业地飞速发展,各航空公司对票
务管理地要求也在不断地提高,本系统就是针对这种日益增长地需求
也进行开发地,随着旅游业地逐渐地成熟发达,航空客运量:大幅度地提高,国内国际地旅游航班地增加,这些都对航空地信息管,理系统提出了更高地要求,所以要不断地完善更新航空售票系统,提高航空售
票系统地工作效率.航空系统中,售票系统是很重要地-一个环节,要
想提高整个航空公司地工作效率,就要先提高售票系统地工作效率和
安全性,故而研发此系统,此系统能够为售票工作提供方便快捷地售
票服务,广“大地客户可以得到更高更好地票务服务,本系统实现一
个单机版地机票售票管理系统,通过考察分析,构建出数据库,并且实
现票务管理模块、客户信息。

管理模块和航班信息管理模块. 系统在开发过程中,应该充分考
虑以后地可扩充性.例如飞机信息属性添加、修改;客户信息属性添加、修改等模块也会不断地更新和完善.所有这些,都要求系统提供足够
地手段进行功能地调整和扩充.而要实现这一点,应通过系统地开放
性来完成,既系统应是一个开放系统,只要符合一定地规范,可以简
单地加入和减少系统地模块,配置系统地硬件.通过软件地修补、替换完成系统地升级和更新换代。

实验三、数据库安全性实验报告

实验三、数据库安全性实验报告

河南工业大学实验报告课程:数据库原理实验名称:实验三数据库安全性院系: ___信息科学与工程学院 _专业班级: _计科 F1203_姓名: ___ _ _________学号: ____ _______指导老师:孙宜贵日期:2014.10.19一.实验目的1.掌握数据库安全性控制的概念;2.通过在 SQL Server 查询分析器创建登录、数据库用户和角色,以及权限管理,来加深对自主存取控制方法( DAC )的理解和掌握。

二. 实验内容及要求假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号是主码;部门(部门号,名称,经理名,电话),其中部门号为主码。

创建数据库chenfeijie:在数据库 chenfeijie中创建表Worker 、 Department :1.请用 T-SQL 语句完成以下内容:(数据安全性)1 )创建一个SQL Server 身份验证的登录(命名方式:数据库名称+Login ,如ZhangsanLogin ),默认数据库是你创建的数据库,为该登录指定 sysadmin 服务器角色;2 )在已有数据库中创建一个数据库用户(命名方式:数据库名称+ User,如ZhangsanUser),与上面的登录关联;3)在已有数据库中创建一个自定义数据库角色(命名方式:数据库名称+ Role,如ZhangsanRole),并把上面用户指定为该角色成员;4)授予该角色对部门表具有 SELECT 权限;5)授予该角色对职工表具有 DELETE 和 INSERT 权限;6)授予该角色对职工表的工资字段的 UPDATE 权限;7)授予该用户生成、改变和删除数据库对象的权限(提示:将该用户指定为某一固定数据库角色成员。

);8)收回该角色对职工表的DELETE权限;9)拒绝该用户对部门表的SELECT权限。

备注:完成以上功能所需要的系统存储过程有sp_addrolemember, sp_addsrvrolemember,SQL Server sp_grantdbaccess, sp_addrole, sp_addlogin 等,具体含义和使用方式可参考联机帮助。

(完整版)数据库技术与应用实验报告

(完整版)数据库技术与应用实验报告

(完整版)数据库技术与应用实验报告《数据库技术与应用》实验报告班级学号:姓名:实验日期:指导老师:实验名称一、实验一表的建立与维护实验目的与要求 1.初步掌握根据一个应用目标把现实问题抽象为关系数据模型的方法,从而为解决实际问题奠定数据基础。

2.掌握表的建立与维护的一般方法。

3.理解表的记录指针与当前记录的意义。

4.掌握表的打开、关闭、浏览、显示等操作方法。

5.掌握表结构的修改。

6.掌握记录的增加与删除等操作。

7.掌握数据复制方法。

8.二、实验准备 1、复习关系数据库的有关概念,深刻理解Virsual FoxPro中所采用的关系模型的实质及Virsual FoxPro所支持的数据模型。

2、复习表的建立、现实与维护等操作。

三、实验内容下表是某校学生花名册,根据该表完成以下操作,写出操作步骤。

学习成绩性学号姓名别学 009901 张小强男 98 85 否 20XX年获全数外语出生年月否少数民族受奖情况国数学奥林匹克竞赛二等奖。

009902 009903 009904 009905 陈斌李哲男男 88 56 75 88 75 82 72 81 否是否是20XX年获全国中学生田径运动会100米第三名009906 009907 009908 009909 张青松男封小莉女周晓钱倩女女 65 82 65 83 81 73 78 85 否否20XX年获广东省三好学生称号 009910 009911 孙力军男肖彬彬女 64 55 68 95 是否赵大明男冯珊女否否1.设计一个表的结构,使其能描述上表的信息,同时又符合关系模型的基本要求。

2.建立表,输入表中的数据,并将保存在自己盘中。

3.给全部女生的数学成绩加5分。

4.将记录指针定位到第5号记录。

5.将记录指针指向孙力军同学。

6.显示所有姓“张”学生的情况。

7.把表的姓名字段宽度修改为8。

8.浏览记录数据,且表头用汉字。

9.把少数民族学生的记录复制到中。

数据库实验报告(合工大)

数据库实验报告(合工大)

设计数据库、数据表并编程实现一、实验目的通过“数据库系统概论”书本知识学习和“数据库原理与应用”课程教学所授知识对“教学管理系统”的实验内容进行分析,通过建立数据库、数据表、数据视图以及触发器,利用SQL结构化查询语言提供的数据操纵功能,设计实现对数据的定义、修改、删除、查询、更新以及控制等操作,并按照实验指导书的各项要求完成实验内容。

二、实验内容(1)根据实验建议所示,建立“学生管理”数据库。

(2)建立数据表的方法,建立五个相关的数据表。

完成数据库的建立并定义各表的完整性约束条件。

分别使用企业管理器和SQL 语言来实现。

(3)熟练掌握并应用SQL中的数据表定义、删除和修改等操作命令;(4)熟练掌握为各表常用字段建立索引,以提高数据检索效率。

create database 学生管理;create table student ( sno Char(9),sname Char(10) not null,sbirthday Datetime,ssex Char(2) check(ssex in ('男','女')),sclass Char(20),sremark Char(100),address Char(40),zipcode Char(6),phone Char(15),email Char(40), primary key(sno) );create table course ( cno char(6) primary key,cname char(20),cpno char(6),ctime Numeric(2),credit Numeric(2),foreign key(cpno)references course(cno));create table score(sno char(9), cno char(6),primary key(sno,cno),foreign key(sno)references student(sno),foreign key(cno)references course(cno),score Numeric(3));create table teacher( Tno char(20) primary key,Tname char(20) ,Tsex Char(2) check(Tsex in ('男','女')),Department char(15),tbirthday Datetime);create table Teaching(Tno char(20),cno char(6),tdate datetime,classroom char(10),sclass char(20),primary key(Tno,cno),foreign key(Tno)references teacher(Tno),foreign key(cno)references course(cno));设计数据插入、修改、删除、查询和视图等操作并编程实现一、实验目的(1)熟练掌握数据更新语句,灵活地操作插入数据、修改数据和删除数据;(2)熟练掌握关系数据库中的完整性概念的应用;(3)掌握单表查询的基本方法;(4)掌握多表连接查询的基本方法;(5)熟练掌握以下练习,并进行以下各类查询:①选择表中的若干列、查询全部列、查询经过计算的值;②选择表中的若干元组,即消除取值重复的行与查询满足指定条件的元组(包括:比较大小、确定范围、确定集合、字符匹配、涉及空值和多种条件查询);③对查询结果排序;④使用集函数;⑤对查询结果分组(6)熟练掌握以下练习,并进行下列各类连接查询:①等值与非等值连接查询;②自身连接;③外连接;④复合条件连接;(7)掌握嵌套查询的基本方法;(8)掌握集合查询的基本方法;(9)熟练掌握查询视图操作(10)熟练掌握更新视图操作(11)熟练关系的完整性概念,领会视图的用途(12)练习以下各类查询:①带有IN谓词的子查询;②带有比较运算符的子查询;③带有ANY或ALL谓词的子查询;④带有EXISTS谓词的子查询;⑤视图查询与更新操作;二、实验内容根据以下给定的部分数据表信息,分别对student, course, score, teacher, teching 表进行数据插入以及根据题目要求用SQL语句实现。

河南工业大学实验报告_实验一 线性结构(二)——栈和队列的操作

河南工业大学实验报告_实验一 线性结构(二)——栈和队列的操作

xxxx大学实验报告课程名称数据结构实验项目实验一线性结构(二)——栈和队列的操作院系信息学院计类系专业班级计类1501 姓名学号指导老师日期批改日期成绩一实验目的1.熟练掌握栈的存储结构及相关典型操作。

2.熟练掌握队列的存储结构及相关典型操作。

二实验内容及要求实验内容:1.建立链式栈,实现栈的初始化、进栈、出栈等典型操作。

2.建立循环队列,实现队列的初始化、进队、出队等典型操作。

实验要求:1.键盘输入数据;2.屏幕输出运行结果。

3.要求记录实验源代码及运行结果。

4.运行环境:VC++6.0三实验过程及运行结果1、循环队列#include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR 0#define OVERFLOW -2#define MAXQSIZE 100 //最大队列长度typedef struct{int *base; //初始化的动态分配存储空间int front;int rear;}SqQueue;//初始化队列int InitQueue(SqQueue Q){Q.base=(int*)malloc(MAXQSIZE*sizeof(int));if (!Q.base)exit(OVERFLOW); //存储分配失败Q.front=Q.rear=0;return OK;}//入队操作int EnQueue(SqQueue Q){int e;if ((Q.rear+1)%MAXQSIZE==Q.front) //判断队满{printf("队列已满,不能入队\n");return ERROR;}printf("请输入入队元素:");scanf("%d",&e);Q.base[Q.rear]=e; //入队Q.rear =(Q.rear+1)%MAXQSIZE; //队尾指针后移return OK;}//出队操作int DeQueue(SqQueue Q){int e;if(Q.front==Q.rear) //判断队空{printf("队列已为空\n");return ERROR;}e=Q.base[Q.front]; //队头出队printf("输出的出队元素为:");printf("%d\n",e);Q.front=(Q.front+1)%MAXQSIZE; //队头下表后移return OK;}//队列长度int QueueLength(SqQueue Q){return((Q.rear-Q.front+MAXQSIZE)%MAXQSIZE); }//队列遍历int QueueTraverse(SqQueue Q){printf("遍历结果为:");while (Q.front!=Q.rear){printf("%d ",Q.base[Q.front]);Q.front=(Q.front+1)%MAXQSIZE;}printf ("\n");return OK;}int main(){int n;SqQueue Q;InitQueue(Q);printf("*输入1为入队*\n");printf("*输入2为出队*\n");printf("*输入3为队列长度*\n");printf("*输入4为遍历*\n");printf("*输入0为退出*\n");printf("*****************\n");while(scanf("%d",&n),n){switch(n){case 1:EnQueue(Q);break;case 2:DeQueue(Q);break;case 3:printf("队列长度为%d\n",QueueLength(Q));break;case 4:QueueTraverse(Q);break;}}return 0;}2、链式栈#include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR 0#define OVERFLOW -2typedef int Status;typedef int SElemType;typedef struct node{SElemType data;struct node *next;}SLnode,*SLinkList;typedef struct{SLinkList top,base;int len;}S_LinkList;//栈的初始化Status Creat_S(S_LinkList &S){int n;SLinkList p,q;printf("栈的初始化,请输入数据,以-1结束:\n");S.top=(SLinkList )malloc(sizeof(SLnode));S.base=(SLinkList )malloc(sizeof(SLnode));S.top->next=S.base;q=S.base;S.len=0;while(scanf("%d",&n),n!=-1){p=(SLinkList )malloc(sizeof(SLnode));p->data=n;S.top->next=p; p->next=q;q=p;S.len++;}q=S.top->next;while(q!=S.base){printf("%d\n",q->data);q=q->next;}printf("*****\n");return OK;}//进栈Status Push_S(S_LinkList &S){int e;printf("请输入进栈元素:");scanf("%d",&e);SLinkList p,q;q=S.top->next;p=(SLinkList )malloc(sizeof(SLnode)); p->data=e;S.top->next=p;p->next=q;q=p;S.len++;return OK;}//出栈Status Pop_S(S_LinkList &S){SLinkList p;p=S.top->next;if(p!=S.base)printf("出栈元素为%d\n",p->data); return OK;}int main(){S_LinkList s;int a;printf("*输入1为栈的初始化*\n");printf("*输入2为入栈*\n");printf("*输入3为出栈*\n");printf("*输入0为退出*\n");printf("************************\n");while(scanf("%d",&a),a){switch(a){case 1:Creat_S(s);break;case 2:Push_S(s);break;case 3:Pop_S(s);break;}}return 0;}四调试情况、设计技巧及体会为了避免顺序栈的存储结构所带来的在操作中需要移动大量数据的缺点,采用链栈,具有动态特性,不用设置头结点。

数据库实验报告(全)

数据库实验报告(全)

实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验一数据库的定义实验1、实验目的熟练掌握和使用SQL Server企业管理器创建数据库、表、索引和修改表结构,并学会使用SQL Server 查询分析器接收Transact-SQL语句和进行结果分析。

2、实验仪器(环境):计算机及SQL Server 20003、实验操作方法:依照实验指导书的内容进行实验。

4、报告内容:(1)通过企业管理器,建立图书借阅数据库;(2)在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为:图书(书号,类别,出版社,作者,书名,定价,作者)读者(编号,姓名,单位,性别,电话)借阅(书号,读者编号,借阅日期)要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。

;(3)指出图书读者数据库各表的主码、外码和数据约束;(4)实验操作步骤和实验结果用截图显示出来。

实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验二数据库的建立和维护实验1、实验目的熟练掌握使用SQL、Transact-SQL和SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。

2、实验仪器(环境):计算机及SQL Server 20003、实验操作方法:依照实验指导书的内容进行实验。

4、报告内容:(1)以一条记录为例,写出用SQL表示的向图书表中插入、修改和删除数据的语句。

(2)用SQL实现在读者表中增加“借书册数”字段,统计借书者在1998年~1999年间所借书的册数,并将结果送入读者表中的借书册数字段的操作语句。

(3)写出操作的过程和操作结果(数据库中各表的数据)并用截图表示出来。

实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验三数据库的简单查询和连接查询实验1、实验目的掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。

2022年河南工业大学计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)

2022年河南工业大学计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)

2022年河南工业大学计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)一、填空题1、安全性控制的一般方法有____________、____________、____________、和____________视图的保护五级安全措施。

2、数据库内的数据是______的,只要有业务发生,数据就会更新,而数据仓库则是______的历史数据,只能定期添加和刷新。

3、数据管理技术经历了______________、______________和______________3个阶段。

4、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是______________,系关系的外码是______________,学生关系的主码是______________,外码是______________。

5、设某数据库中有商品表(商品号,商品名,商品类别,价格)。

现要创建一个视图,该视图包含全部商品类别及每类商品的平均价格。

请补全如下语句: CREATE VIEW V1(商品类别,平均价格)AS SELECT商品类别,_____FROM商品表GROUP BY商品类别;6、在VB 6.0中,已经用Adobel连接到数据库,并已绑定到数据库中的某个关系表,现要通过此控件向表中插入数据,需要用到Adobel.Recordset的_____方法和Update方法,使用Adobel.Recordset的_____方法可以使当前行指针在结果集中向前移动一行。

7、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。

8、设在SQL Server 2000环境下,对“销售数据库”进行的备份操作序列如下图所示。

①出现故障后,为尽可能减少数据丢失,需要利用备份数据进行恢复。

数据库实验报告

数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是通过实际操作和实践,深入理解数据库的基本概念、原理和技术,掌握数据库的设计、创建、管理和操作方法,提高对数据库的应用能力和解决实际问题的能力。

二、实验环境本次实验使用的数据库管理系统为 MySQL 80,操作系统为Windows 10。

实验工具包括 MySQL Workbench 80 和命令行终端。

三、实验内容(一)数据库设计1、需求分析根据给定的业务场景,对数据库的需求进行了详细的分析。

例如,对于一个学生管理系统,需要存储学生的基本信息(学号、姓名、性别、出生日期等)、课程信息(课程编号、课程名称、学分等)以及学生的选课信息(学号、课程编号、成绩等)。

2、概念模型设计使用 ER 图(实体关系图)对系统中的实体和关系进行了建模。

明确了各个实体的属性和实体之间的联系,为后续的逻辑设计奠定了基础。

3、逻辑模型设计将 ER 图转换为关系模型,确定了各个表的结构,包括表名、字段名、数据类型、约束条件等。

4、物理模型设计考虑了数据库的存储结构、索引、分区等物理存储方面的设计,以提高数据库的性能和存储空间的利用率。

(二)数据库创建1、使用 MySQL Workbench 创建数据库在 MySQL Workbench 中,通过图形界面操作,创建了指定名称的数据库,并设置了相应的字符集和校对规则。

2、使用 SQL 语句创建表使用 CREATE TABLE 语句,根据逻辑模型设计的结果,创建了各个数据表,并定义了主键、外键、唯一约束、非空约束等。

(三)数据操作1、数据插入使用 INSERT INTO 语句向表中插入了大量的测试数据,以验证数据库的功能和性能。

2、数据查询使用 SELECT 语句进行了各种复杂的查询操作,包括单表查询、多表连接查询、子查询、聚合函数的使用等。

3、数据更新使用 UPDATE 语句对表中的数据进行了修改操作,确保数据的准确性和完整性。

数据库实验报告

数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是深入了解数据库的基本概念和操作,掌握数据库管理系统的使用方法,提高对数据的管理和处理能力。

通过实际操作,我们希望能够熟练运用SQL 语句进行数据的查询、插入、更新和删除,以及创建和管理数据库表、索引和视图等对象。

二、实验环境本次实验使用的数据库管理系统是 MySQL 80,操作系统为Windows 10。

实验在个人计算机上进行,使用 MySQL Workbench 作为数据库管理工具。

三、实验内容1、数据库创建使用 CREATE DATABASE 语句创建了一个名为“student_management”的数据库,用于存储学生管理相关的数据。

2、表的创建在“student_management”数据库中,创建了以下几张表:“students”表,包含学生的学号(student_id)、姓名(name)、性别(gender)、年龄(age)等字段。

“courses”表,包含课程的课程号(course_id)、课程名称(course_name)、学分(credit)等字段。

“enrolls”表,用于关联学生和课程,包含学生学号(student_id)、课程号(course_id)和成绩(grade)等字段。

3、数据插入使用 INSERT INTO 语句向上述表中插入了一些示例数据,以方便后续的查询和操作。

4、数据查询通过 SELECT 语句进行了多种查询操作,例如:查询所有学生的信息。

查询特定性别学生的信息。

查询选修了某门课程的学生名单及成绩。

5、数据更新使用 UPDATE 语句对部分学生的年龄或成绩进行了修改。

6、数据删除使用 DELETE 语句删除了一些不再需要的数据记录。

7、索引创建为“students”表的“student_id”字段和“courses”表的“course_id”字段创建了索引,以提高查询效率。

8、视图创建创建了一个名为“student_course_grade_view”的视图,用于展示学生的学号、姓名、课程名称和成绩。

《数据库实验》实验报告

《数据库实验》实验报告

《数据库实验》实验报告《数据库实验》实验报告黄爱蓉编审湖北汽车⼯业学院电⼦信息科学系⼆〇〇七年⼀⽉实验⼀:建⽴数据库及基本表实验报告⼀、实验⽬的1、了解SQL Server数据库的逻辑结构和物理结构;2、了解SQL Server的基本数据类型;3、学会在企业管理器中创建数据库和表;4、使⽤SQL查询分析器⽤CREA TE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。

⼆、实验内容1、创建数据库和查看数据库属性。

2、创建表。

3、查看和修改表结构。

4、熟悉企业管理器和查询分析器⼯具的使⽤⽅法三、实验步骤1、在企业管理器中创建数据库和数据表。

(1) 使⽤企业管理器建⽴图书管理数据库,数据库名为BM,初始⼤⼩为10MB,最⼤为50MB,数据库⾃动增长,增长⽅式是按5%⽐例增长;⽇志⽂件初始为2MB,最⼤可增长到5MB,按1MB增长。

数据库的逻辑⽂件名和物理⽂件名均采⽤默认值。

详细步骤:(2) 在企业管理器中查看图书管理数据库的属性,并进⾏修改,使之符合要求。

(3) 通过企业管理器,在建好了图书管理数据库BM中建⽴图书(book)、读者(reader)和借阅(borrow)3个表,其结构为:图书(书号,类别,出版社,作者,书名,定价);读者(编号,姓名,单位,性别,电话);借阅(书号,读者编号,借阅⽇期)。

创建上述三个表的步骤:三个表各个字段的数据类型:2、在查询分析器中创建数据库和数据表(1) 创建数据库S-C 的sql语句:(2) 在数据库S-C下,创建基本表学⽣表student(sno,sname,ssex,sage,sdept)的sql语句:创建基本表课程表course(cno,cname, ccredit)的sql语句:创建基本表成绩表sc(sno,cno,grade)的sql语句:(3) 在窗⼝下分别键⼊DROP TABLE Student及DROP TABLE SC命令,运⾏后观察结果。

数据库大型实验-实验报告

数据库大型实验-实验报告

高校成绩管理系统数据库设计与实现专业班级:机自1001班学号: ************学生姓名:***1、需求分析1.1系统开发意义随着学校规模的不断扩大,专业,班级,学生的数量急剧增加,有关学生选课的各种信息量也成倍增长,而目前许多高校的学生选课管理荏苒停留在复杂的人工操作上,重复工作较多,工作量大,效率地,因此,迫切需要开发基于互联网的学生信息管系统来提高管理工作的效率。

基于这种学生信息管理系统在学生选课的规范管理,科学统计和快速查询方面具有较大的实用意义。

它提高了信息的开发性,达到地改善了学生,教师对其最新信息查询的准确性。

学生成绩管理系统是一个教育单位不可或缺的部分,它的内容对于学校的决策者和管理者来说都是至关重要的,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,对学生来说可以轻松地查阅自己在校的成绩已经信息等。

但是一直以来人们都是靠传统人工的方式管理学生成绩,这种管理方式存在着许多缺点,效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不是困难。

因此,开发这样的一套成绩管理系统成为很必要的事情。

学生成绩管理系统提供了强大学生成绩管理功能,方便系统管理员对学生成绩等信息的添加,修改,删除,查询等操作,同时也方便学生对自己各科成绩的查询学习的必要性。

1.2 功能需求学生成绩管理系统主要提供学生成绩的查询、维护,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息。

教师可以通过成绩管理系统查阅学生信息,教师信息、以及自己所执教课程学生成绩的录入。

系统管理员可以实现以上的所以功能,还有对学生信息的添加,删除,修改;教师信息的添加,删除,修改;课程信息的添加,删除,修改。

具体功能如下:a,管理员模块主要功能是对每学期课课程信息的添加,修改,删除;教师信息的添加,删除,修改;学生信息的添加,修改,删除;还可以对全体学生信息,教师信息的查询,学生成绩的查询以及自己登陆密码的修改等。

河南工大DSP实验报告

河南工大DSP实验报告

实验一数据存储实验一实验目的1.掌握TMS320F2812程序空间的分配。

2.掌握TMS320F2812数据空间的分配。

3.能够熟练运用TMS320F2812数据空间的指令。

二实验步骤与内容1.在进行DSP实验之前,需先连接好仿真器、实验箱及计算机,连接方法如下所示。

2.F2812CPU板的JUMP1的1和2脚短接,拨码开关SW1的第二位置ON;其余OFF。

3.E300底板的开关SW4的第2位置ON,其余位置OFF。

其余开关设置为OFF。

4.上电复位在硬件安装完成后,确认安装正确、各实验部件及电源连接无误后,启动计算机,接通仿真器电源,此时,仿真器上的指示灯应点亮,否则DSP开发系统与计算机连接存在问题。

5.运行CCS程序1)待计算机启动成功后,实验箱220V电源置“ON”,实验箱上电2)启动CCS5.5,工作环境的路径选择:E:\E300Program\E300 TechV-2812\normal6.成功运行CCS5.5程序后,出现如下图所示界面。

7.点菜单栏Project/Build All命令编译整个工程,编译完成后点击按钮:8. 用“View”下拉菜单中的“Memory/Browser”查看内存单元,初始参数如下图:此时可以观测到以0x003F9020为起始地址的存储单元内的数据。

9.单击按钮,开始运行程序,一段时间后,单击按钮,停止程序运行,查看0x003F9020H~ 0x3F902FH单元的数据的变化。

10. 关闭Memory Browser窗口,点击按钮,退出仿真模式。

右键点击Project Explorer窗口下的工程文件“e300_01_mem”,选择Close Project命令关闭该工程,然后关闭CCS软件,本实验完毕。

三程序框图四实验总结通过这次实验,基本熟悉了CCS用户界面的使用,掌握了TMS320F2812程序空间的分配和数据空间的分配,能够熟练运用数据空间的指令。

数据库实验八-数据库编程

数据库实验八-数据库编程

河南工业大学实验报告课程数据库系统原理及应用实验名称实验八、简单数据库应用系统开发院系信息科学与工程学院指导老师:孙宜贵日期 2016.11.28专业班级计科F1401 姓名郑旺旺学号 201416010102一.实验目的1、理解数据库驱动的应用系统的工作原理,熟悉数据库应用系统的基本开发流程;2、采用自己熟悉的开发平台(如Java)、编程语言(如Java)和数据库访问技术(如JDBC),结合SQL SERVER数据库实现一个典型的基于数据库的应用程序(Web应用程序、桌面应用、移动应用等均可),深刻理解数据库在系统中的地位,培养系统思维。

二.实验要求1.在《数据库设计》和《数据库编程》实验的基础上,实现目标系统业务需求所规定的主要内容,构建一个可运行的数据库应用系统,并整理相应文档,提交实验报告。

2.最低要求:在应用程序的相应模块中通过JDBC调用《数据库编程》实验内容1~4中实现的存储过程;3.扩展要求:个人在《数据库编程》实验内容5中列出的其他各项数据库访问操作(数据添加、修改、删除、查看或统计)的数据库代码必须封装为存储过程,然后在应用程序中通过JDBC调用存储过程。

4.说明:不得采用Hibernate等ORM组件;对于应用程序的外观设计和其他框架组件(如Struts、Spring、Swing等)不做限制;有明显抄袭痕迹、雷同者本次成绩作废。

三.实验内容内容提纲:1)整体实现思想、方案等描述;2)模块(或子系统)设计与实现(各个模块要分开按序填写!)(主要包括运行界面截图、对应存储过程脚本、调用代码、界面逻辑处理代码等体现个人工作的内容。

)说明:截图精简、注释适当,尽量去除无关代码;对应用程序设计方案的图形化表示不做要求,如果绘图请采用一致的方法。

四.实验过程及结果1)系统实现思想及方案本系统采用JDBC链接数据库,通过JDBC调用数据库中已经实现的存储过程,实现增,删,改,查及其他操作。

数据库原理实验报告与作业(2005.12)

数据库原理实验报告与作业(2005.12)

《数据库原理与应用》实验报告册学院:信息工程学院专业:软件工程班级:14软工一班学号:1322120144*名:***信息工程学院2015-12实验项目列表宁波大红鹰学院实验报告实验名称:数据定义语言实验时间:2016 年 4 月7 日实验类型:实验地点:成绩:指导教师签字:一、实验目的二、实验原理(语句)CREATE DATABASE <数据库名>;USE <数据库名>;DROP DATABASE <数据库名>三、实验环境SQL Sever四、实验数据记录1、在新创建的数据库Library中创建三张表Books、Readers、L_R。

1)Books(bookid,bookname,author,price,pubcompany,csl)字段说明:bookid-图书编号,bookname-图书名称,author-作者,price-单价,pubcompany-出版社,csl-藏书量create database librarycreate table books(bookid char(7)primary key,bookname char(20)not null,author varchar(30)not null,price money not null,pubcompany varchar(50)not null,csl int not null)原因:解决办法:(3)L_R中录入借阅数据时出现的错误:原因:解决办法:六、讨论、心得(主要整理和总结整个实验过程中出现过的错误、解决办法和注意事项)宁波大红鹰学院实验报告实验名称:数据完整性实验时间:2016 年 4 月7日实验类型:实验地点:成绩:指导教师签字:sphone varchar(20),foreign key (sdept)references dept(dno))7、修改选课信息表,选择该表中合适的属性设置外码约束(foreign key),要求允许级联更新,但不允许级联删除。

实验八 河南工业大学JDBC访问数据库实验

实验八 河南工业大学JDBC访问数据库实验

河南工业大学实验报告
课程数据库系统原理及应用 _
实验名称实验八使用JDBC访问数据库
院系____信息科学与工程学院____ 专业班级__ _________
姓名_______________ 学号____________ _
指导老师:孙宜贵日期
一.实验目的
熟悉在Java语言中采用JDBC调用SQL SERVER存储过程的方法。

二.实验内容及要求
基于实验二中的关系模式,编写存储过程,并采用JDBC来调用存储过程完成指定查询需求。

1)存储过程:查询所有院系的平均高考成绩,并按平均成绩排序。

调用存储过程返回数据并在界面上显示数据。

2)存储过程:查询指定院系(参数)的教师信息,并按教师编号升序排序。

调用存储过程完成:查询“信息科学与工程学院”的教师信息。

3)存储过程:修改指定学生(参数)、指定课程(参数)的成绩(参数)。

调用存储过程完成:修改学生'2007001'的选修课程'105322'的成绩为89。

要求:提交源程序并标识必要的注释。

保证程序能正确编译和运行,认真填写实验报告。

三.实验过程及结果(含源代码)
四.实验中的问题及心得。

数据库实验七河南工业大学

数据库实验七河南工业大学

《数据库系统原理及应用》实验报告(七)专业班级: 计科1102班学号: 201116910809姓名: 曹斌指导教师: 苏小玲2013 年11 月25 日实验七名称:SQL Server触发器和游标一、实验内容及要求1.创建满足下述要求的DML触发器(前触发器和后触发器均可),并验证触发器执行情况。

任务1:限制学生所在系的取值范围为{计算机系,信息管理系,数学系,通信工程系}。

任务2:限制每个学期所开设的课程总学分在20~30范围内。

任务3:限制每个学生每学期选课门数不能超过6门(设只针对单行插入操作)任务4:限制不能删除有人选的课程2.创建满足下述要求的游标任务1:查询java课程的考试情况,并按教材11-19所示样式显示结果数据。

任务2:统计每个系的男生人数和女生人数,并按教材11-20所示样式显示结果数据。

任务3:列出每个系的学生信息,要求首先列出一个系的系名,然后在该系名下列出本系学生的姓名和性别,以此类推,直至列出全部系。

要求按教材11-21所示样式显示结果数据。

二、实验目的掌握触发器的概念;掌握触发器创建方法;掌握游标的概念;掌握游标的使用方法。

三.实验步骤及运行结果1.创建满足下述要求的DML触发器(前触发器和后触发器均可),并验证触发器执行情况。

任务1:限制学生所在系的取值范围为{计算机系,信息管理系,数学系,通信工程系}。

create trigger tri_Insertsdept on Student after insert as if exists(select*from inserted i where i.Sdept!='计算机系'and i.Sdept!='信息管理系'and i.Sdept!='数学系'and i.Sdept!='通信工程系')Begin print'你所插入的学生的系被限制!'rollback end goinsert into student values (080000,'童彤','女','1990-05-01','服装设计','服装设计系')insert into student values(080000,'顾城北','男','1990-06-01','高级编程','计算机系')任务2:限制每个学期所开设的课程总学分在20~30范围内。

数据库实验五河南工业大学

数据库实验五河南工业大学

实验成绩《数据库系统原理及应用》实验报告五专业班级: 计科1102学号: 201116910809姓名: 曹斌指导教师: 苏小玲2013 年11 月12 日实验五名称:SQL Server视图和索引一、实验内容及要求1.创建视图和查看视图的定义任务1:用对象资源管理器管理器方式,创建一个名为“v1”的视图,用于查询计算机网络专业男生的学号、姓名、出生日期,并将视图的列名分别改为:学生学号、男生姓名、生日。

任务2:用对象资源管理器管理器方式,创建一个名为“v成绩”的视图,用于查询成绩在60~80之间的学生学号、姓名、专业名、课程名、成绩信息。

任务3:用命令方式,创建一个名为“V个人最高分”的视图,用于查询每门课程的最高分的学生学号、姓名、课程号、成绩信息。

任务4:用命令方式,创建一个名为“V全校最高分”的视图,用于查询所有成绩中的最高分的学生学号、姓名、专业名、课程号、成绩。

2.修改视图任务:用命令方式,在“v1”的视图中增加两列:专业和系。

3.使用视图向数据表中插入数据任务1:用命令方式,在“V1”视图中添加如下两条记录,注意查看添加的结果。

分析为什么?(‘020106’,‘李好’,‘1981-04-22’,‘计算机网络’,‘计算机’)(‘020107’,‘周权’,‘1981-07-08’,‘信息安全’,‘计算机’)任务2:用命令方式,在“V1”视图中设置“with check option”属性,然后通过视图向基表中添加如下两条记录,注意查看添加的结果。

(‘020108’,‘赵伟’,‘1980-05-07’,‘计算机网络’,‘计算机’)(‘020109’,‘刘齐’,‘1981-12-02’,‘信息安全’,‘计算机’)请思考:这两条记录能否插入到基表中?能否在视图中能否显示?4.使用视图删除数据表中的数据任务1:用命令方式或对象资源管理器管理器方式,删除“V1”视图中,学号为‘020108’的记录。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库系统原理及应用》实验报告(七)专业班级: 计科1102班学号: 201116910809姓名: 曹斌指导教师: 苏小玲2013 年11 月25 日实验七名称:SQL Server触发器和游标一、实验内容及要求1.创建满足下述要求的DML触发器(前触发器和后触发器均可),并验证触发器执行情况。

任务1:限制学生所在系的取值范围为{计算机系,信息管理系,数学系,通信工程系}。

任务2:限制每个学期所开设的课程总学分在20~30范围内。

任务3:限制每个学生每学期选课门数不能超过6门(设只针对单行插入操作)任务4:限制不能删除有人选的课程2.创建满足下述要求的游标任务1:查询java课程的考试情况,并按教材11-19所示样式显示结果数据。

任务2:统计每个系的男生人数和女生人数,并按教材11-20所示样式显示结果数据。

任务3:列出每个系的学生信息,要求首先列出一个系的系名,然后在该系名下列出本系学生的姓名和性别,以此类推,直至列出全部系。

要求按教材11-21所示样式显示结果数据。

二、实验目的掌握触发器的概念;掌握触发器创建方法;掌握游标的概念;掌握游标的使用方法。

三.实验步骤及运行结果1.创建满足下述要求的DML触发器(前触发器和后触发器均可),并验证触发器执行情况。

任务1:限制学生所在系的取值范围为{计算机系,信息管理系,数学系,通信工程系}。

create trigger tri_Insertsdept on Student after insert as if exists(select*from inserted i where i.Sdept!='计算机系'and i.Sdept!='信息管理系'and i.Sdept!='数学系'and i.Sdept!='通信工程系')Begin print'你所插入的学生的系被限制!'rollback end goinsert into student values (080000,'童彤','女','1990-05-01','服装设计','服装设计系')insert into student values(080000,'顾城北','男','1990-06-01','高级编程','计算机系')任务2:限制每个学期所开设的课程总学分在20~30范围内。

create trigger tri_Insertcredit on Course after insert as if (select sum(c.Credit)from Course c join inserted i on i.Smester=c.Smester)not between20 and30 begin print'你所插入的课程所在学期的总学分不在~30这个范围内' rollback end goinsert into Course values ('C012','影视鉴赏',25,1)insert into Course values ('C013','服装设计',16,1)任务3:限制每个学生每学期选课门数不能超过6门(设只针对单行插入操作)create trigger tri_totalcno on SC after insert as declare@sno char(9)select@sno=inserted.Sno from insertedif exists(select count(*)from SC join Course c on o=o where SC.Sno=@sno group by Smester having count(*)>2) begin print'你所插入的学生选课门数超过门!' Rollback end goinsert into SC values(821102,'c006',88)insert into SC values(811101,'c006',86)任务4:限制不能删除有人选的课程create trigger tri_deletcno on Course after delete asif exists(select*from Course c join deleted d on o=o join SC on o=o)Begin print'你所删除的学生存在选课!' rollback end godelete from Course where Cno='c001'delete from Course where Cno='c013'2.创建满足下述要求的游标任务1:查询java课程的考试情况,并按教材11-19所示样式显示结果数据。

declare@name nchar(5),@sdept nvarchar(20),@grade intprint'选了java课程的学生情况:'print'姓名所在系成绩'declare java_cursor cursor forselect Sname,Sdept,Grade from Student s join SC on s.Sno=SC.Sno join Course c on o=o where Cname='java' open java_cursorfetch next from java_cursor into@name,@sdept,@gradewhile@@FETCH_STATUS=0 beginprint@name+' '+@sdept+' '+cast(@grade as char(4))fetch next from java_cursor into@name,@sdept,@gradeEnd close java_cursor deallocate java_cursor任务2:统计每个系的男生人数和女生人数,并按教材11-20所示样式显示结果数据。

declare@sdept nvarchar(20),@sex nchar(1),@number intprint'系名性别人数:'print'*****************************'declare sdeptsex_cursor cursor forselect Sdept,Ssex,count(*)from Student group by Sdept,Ssex order by Sdeptopen sdeptsex_cursorfetch next from sdeptsex_cursor into@sdept,@sex,@numberwhile@@FETCH_STATUS=0 beginprint@sdept+' '+@sex+' '+cast(@number as char(4))fetch next from sdeptsex_cursor into@sdept,@sex,@numberEnd close sdeptsex_cursor deallocate sdeptsex_cursor任务3:列出每个系的学生信息,要求首先列出一个系的系名,然后在该系名下列出本系学生的姓名和性别,以此类推,直至列出全部系。

declare@sdept nvarchar(20),@name nchar(5),@sex nchar(1)declare dept_cursor cursor forselect distinct Sdept from Studentopen dept_cursorfetch next from dept_cursor into@sdeptwhile@@FETCH_STATUS=0 begin print@sdept print'姓名性别'declare information_cursor cursor forselect Sname,Ssex from Studentopen information_cursorfetch next from information_cursor into@name,@sexwhile@@FETCH_STATUS=0 begin print@name+' '+@sexfetch next from information_cursor into@name,@sexEnd close information_cursor deallocate information_cursorprint'' print'' print''fetch next from dept_cursor into@sdept End close dept_cursor deallocate dept_cursor四、实验体会或实验中遇到的问题在实验开始之初,由于对之前所学的知识有所忘记,所以我选择首先复习之前的select语句的相关知识。

在进行触发器的相关实验时,遇到一些令我迷惑的问题例如:限制每个学生每学期选课门数不能超过6门。

由于有多重限制条件,后来在同学的讲解下利用declare解决了。

感觉触发器太神奇了,操作者做了不符合条件的操作就可以自动警告。

在做游标的相关实验时,相对简单。

油表可以对查询的数据逐行逐列的操作,方便简洁。

知识输出的结果至今无法整齐对照,令人费解。

相关文档
最新文档