当前位置:文档之家› 数据库原理实践报告校运动会管理系统分析解析

数据库原理实践报告校运动会管理系统分析解析

数据库原理实践报告校运动会管理系统分析解析
数据库原理实践报告校运动会管理系统分析解析

苏州科技学院

电子与信息工程学院《数据库原理课程设计》报告

学号1330107131

姓名季雯雅

班级计算机1321

日期2014年12月

一、任务及要求:校运动会管理系统

1.初始化输入:N-参赛院系,M-男子竞赛项目数,W-女子竞赛项目数;

各项目名次取法有如下几种:

取前5名:第1名得分7,第2名得分5,第3名得分3,第4名得分2,第5名得分1;

取前3名:第1名得分5,第2名得分3,第3名得分2;

用户自定义:各名次权值由用户指定。

2.由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。

3.所有信息记录完毕后,用户可以查询各个院系的比赛成绩,查看参赛院系信息和比赛项目信息等。

二、数据库设计:(要求叙述数据库设计的过程,画出E-R图,列出数据库中的表名称及结构,并说明表间的关系)。

校运动会管理主要包含学生信息,属性有姓名、学号、性别、院系、参加项目、名次。下面是数据库关系模式。

E-R图:

学生信息表:主要保存学生基本信息,结构及解释如表1所示。

表1

字段类型含义

姓名char(20) 姓名

学号char(20) 学号,主键

性别char(20) 性别

院系char(20) 院系

参加项目char(20) 参加项目

名次char(20) 名次

数据库名为“student”,表名为“学生信息”。其中学号设置为主键,所有的都设置为char型。

三、实现的功能及相应的界面和代码:

1、连接数据库的实现

首先实现数据库的连接,代码如下所示:

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User

Id=123;password=123";

conn.Open();

conn.Close();

采用连接数据库字符串连接数据库,实例化数据适配器对象,用查询结果填充数据集,在GridView里显示数据集的内容。

2、功能实现

主要代码如下:

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User

Id=123;password=123";

conn.Open();

string sql0 = "insert into student values('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','"

+ TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "')";

SqlCommand sqlCmd0 = new SqlCommand(sql0, conn);

sqlCmd0.ExecuteNonQuery();

conn.Close();

3、查询功能

①按学号查询

图2 查询初始界面

控件DropDownList、Button、GridView。DropDownList的项里我把所有学生的信息全添加到它的可选项里,用DropDownList.SelectedValue获取选择的学号,单击查询按钮后,在GridView里会显示查询结果。在查询按钮下的代码里写了连接数据库的语句,查询的sql语句,实例化数据适配器对象,用查询结果填充数据集,再把数据集的内容显示到GridView里。

主要代码如下:

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User

Id=123;password=123";

conn.Open();

SqlDataAdapter da = new SqlDataAdapter();

DataSet ds = new DataSet();

SqlCommand sqlscmd = new SqlCommand("select* from student");

sqlscmd.Connection = conn;

da.SelectCommand = sqlscmd;

da.Fill(ds, "grade1");

GridView1.DataSource = ds.Tables["grade1"];

GridView1.DataBind();

conn.Close();

conn.Dispose();

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User

Id=123;password=123";

conn.Open();

SqlDataAdapter da = new SqlDataAdapter();

DataSet ds = new DataSet();

SqlCommand sqlscmd = new SqlCommand("select*from student where 学号='"+s1+"'");

sqlscmd.Connection = conn;

da.SelectCommand = sqlscmd;

da.Fill(ds, "grade1");

GridView2.DataSource = ds.Tables["grade1"];

GridView2.DataBind();

conn.Close();

conn.Dispose();

图3 全部查询结果界面

图4 按学号查询结果界面

②按名次查询

用DropDownList.SelectedValue获取前五名以及前三名的学生的学号,单击显示按钮后,在GridView里会显示查询的结果。在查询按钮下的代码里写了连接数据库的语句,查询的sql语句,实例化数据适配器对象,用查询结果填充数据集,再把数据集的内容显示到GridView里。

主要代码如下:

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User

Id=123;password=123";

conn.Open();

SqlDataAdapter da = new SqlDataAdapter();

DataSet ds = new DataSet();

SqlCommand sqlscmd = new SqlCommand("select top 5 * from student order by 名次desc"); sqlscmd.Connection = conn;

da.SelectCommand = sqlscmd;

da.Fill(ds, "grade1");

GridView1.DataSource = ds.Tables["grade1"];

GridView1.DataBind();

conn.Close();

conn.Dispose();

SqlConnection conn = new SqlConnection();

conn.ConnectionString = "data Source=PC-20130301IZLT\\SQLEXPRESS;initial Catalog =123;User Id=123;password=123";

conn.Open();

SqlDataAdapter da = new SqlDataAdapter();

DataSet ds = new DataSet();

SqlCommand sqlscmd = new SqlCommand("select top 3 * from student order by 名次desc"); sqlscmd.Connection = conn;

da.SelectCommand = sqlscmd;

da.Fill(ds, "grade1");

GridView1.DataSource = ds.Tables["grade1"];

GridView1.DataBind();

conn.Close();

conn.Dispose();

图5 前五名名次查询结果界面

图6 前三名名次查询结果界面

4、添加功能

在添加信息下的文本框里直接输入想要添加的信息,然后单击提交按钮即可实现添加操作。在该提交代码里,用的是insert命令语句,并执行该命令,那么添加的信息就会更新到数据库里。

主要代码如下:

string sql0 = "insert into student values('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "')";

SqlCommand sqlCmd0 = new SqlCommand(sql0, conn);

sqlCmd0.ExecuteNonQuery();

图7 添加信息显示界面

四、调试分析:(包括遇到的问题及解决办法,经验与体会等)

这次实践的难度在于怎么把通过数据库查询出来的结果在textbox里显示。通过这次实践,我知道了怎样去设计一个系统的流程,还有编译过程中有错误后不断的调试技巧。

数据库系统原理及应用教程第四版课后答案

第一章 1、(1)数据:数据用于载荷信息的物理符号。 (2)数据的特征;○1数据有“型”与“值”之分;○2数据受数据类型与取值范围的约束;○3数据有定性表示与定量之分;○4数据应具有载体与多种表现形式。 3、(1)数据管理的功能: ○1组织与保存数据功能,即将收集到的数据合理地分类组织,将其存储在物理载体上,使数据能够长期的被保存; ○2数据维护功能,即根据需要随时进行插入新数据,修改原数据与删除失效数据的操作; ○3数据查询与数据统计功能,即快速的得到需要的正确数据,满足各种使用要求;○4数据的安全与完整性控制功能,即能保护数据的安全与完整性。 (2)数据管理的目标:收集完整的信息,将信息用数据表示,按数据结构合理科学的组织并保存数据;为各种使用快速地提供需要的数据,并保护数据的安全与完整性。 4、(1)数据库:就是数据管理的新方法与技术,她就是一个按数据结构来存储与管理数据的计算机软件系统。 (2)数据库中的数据具有的特点:○1数据库中的数据具有整体性,即数据库中的数据要保持自身完整的数据结构;○2数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数据库中的数据,多个用户可以同时共享数据库中的数据资源。 5、(1)数据库管理系统:它就是专门用于管理数据库的计算机管理软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询与统计等操作功能,并完成对数据完整性、安全性进行操作的功能。 (2)数据库管理系统主要功能:就是数据存储、数据操作与数据控制功能。其数据存储与数据操作就是:数据库的定义功能,指未说明库中的数据情况而进行的建立数据库结构的操作;数据库建立功能,指大批数据录入到数据库的操作,它使得库中含有需要保护的数据记录;数据库维护功能,指对数据的插入、删除与修改操纵,其操作做能满足库中信息变化或更新的需求;数据库查询与统计功能,指通过对数据库的访问,为实际应用提供需要的数据。数据库管理系统的数据控制功能为:数据安全性控制功能,即为了保证数据库的数据安全可靠,防止不合法的使用造成数据库泄露与破坏,也就就是避免数据被人偷瞧、篡改或破坏;数据库完整性控制功能,指为了保证数据库中的数据的正确、有效与相容,防止不合语意的错误数据被输入或输出。 14、(1)数据库系统的软件由几部分组成?数据库系统的软件中包括操作系统(OS)、数据库管理系统(DBMS)、主语言系统、应用程序软件与用户数据库。 (2)作用:①操作系统或汉字操作系统:操作系统就是所有计算机软件的基础,在数据库系统中它起着支持DBMS及主语言系统工作的作用。如果管理的信息中有汉字,则需要中文操作系统的支持,以提供汉字的输入、输出方法与汉字信息的处理方法。②数据库管理系统与主语言系统:数据库管理系统就是为定义、建立、维护、使用及控制数据库而提供的有关数据管理的系统软件。主语言系统就是为应用程序提供的诸如程序控制、数据输入输出、功能函数、图形处理、计算方法等数据处理功能的系统软件。③应用开发工具软件:应用开发工具就是DBMS系统为应用开发人员与最终用户提供的高效率、多功能的应用生成器、第四代计算机语言等各种软件工具.如报表生成器、表单生成器、查询与视图设计器等,它们为数据库系统的开发与使用提供了良好的环境与帮助。④应用系统及数据库:数据库应用系统包括为特定的应用环境建立的数据库、开发的各类应用程序及编写的文档资料,它们就是一个有机整体。通过运行数据库应用系统,可以实现对数据库中数据的维护、查询、管理与处理操作。(3)关系:

数据库原理实验报告

南京晓庄学院 《数据库原理与应用》 课程实验报告 实验一SQL Server 2005常用服务与实用工具实验 所在院(系):数学与信息技术学院 班级:14软工5班 学号:14551204 14551206 姓名:花元凯罗文波 1.实验目的 (1)了解Microsoft 关系数据库管理系统SQL Server的发展历史及其特性。 (2)了解SQL Server 2005的主要组件、常用服务和系统配置。 (3)掌握Microsoft SQL Server Management Studio 图形环境的基本操作方法。了解使用“SQL Server 2005 联机从书”获取帮助信息的方法;了解“查询编辑器”的使用方法;了解模板的使用方法。 2.实验要求 (1)收集整理Microsoft关系数据库管理系统SQL Server的相关资料,总结其发展历史及SQL Server 2005主要版本类别和主要功能特性。 (2)使用SQL Server配置管理器查看和管理SQL Server 2005服务。 (3)使用Microsoft SQL Server Management Studio连接数据库;使用SQL Server帮助系统获得 所感兴趣的相关产品主题/技术文档。

(4)使用Microsoft SQL Server Management Studio“查询编辑器”编辑并执行Transact-SQL查 询语句。 (5)查看Microsoft SQL Server 2005模板,了解模板的使用方法。 (6)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 (1) 简要总结SQL Server系统发展历史及SQL Server 2005主要版本类别与主要功能特性。 SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能(BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。目前最新版本是SQL SERVER 2014。 1,SQL Server 2005学习版当保护和管理应用系统内外部的信息变得至关重要时,通过提供一套免费、易于使用和健壮的数据库,学习版帮助开发人员建立强健的和可靠的应用系统。

专科《数据库原理与应用》_试卷_答案

专科《数据库原理与应用》 一、(共66题,共150分) 1. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中在( ),程序员可能需要设计数据在内存中的物理地址。(2分) A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 .标准答案:C 2. 在关系模式中,如果属性A和B存在1对1的联系,则存在( ) 依赖关系。(2分) A. B. C. D.以上都不是 .标准答案:C 3. 关系模型支持( ) 的数据结构。(2分) A.线性结构 B.树结构 C.图结构 D.集合结构 .标准答案:D 4. 在数据库三级模式结构中,内模式是( ) 的视图。(2分) A.计算机世界 B.信息世界 C.现实世界终端用户 D.数据库管理员 .标准答案:A 5. 关系模型的参照完整性要求( ) 。(2分) A.一个关系必须有外码 B.外码必须是父关系的主属性 C.外码所在的关系即子关系必须和父关系是不同关系 D.外码或为空或为父关系对应主码的值 .标准答案:B 6. SQL语言中的DELETE命令属于( ) 。(2分) A.数据定义语言 B.数据操作语言 C.数据控制语言 D.数据查询语言 .标准答案:B 7. ( ) 是数据库系统概论的直接先导课程之一。(2分) A.大学物理 B.汇编语言 C.数据结构 D.模拟电路 .标准答案:C 8. 数据库管理系统简称DBMS,下列系统软件中,( ) 是具有DBMS功能的软件。(2分) A.Microsoft Office Word B.Microsoft Office PowerPoint C.Microsoft Office Outlook D.Microsoft Office Access .标准答案:D 9. SQL语言的数据查询语言SELECT命令语法接近自然语言,下列子句中( ) 是SELECT命令语法规定必须有的部分。(2分) A.FROM子句 B.GROUP BY子句 C.ORDER BY子句 D.INTO子句 .标准答案:A 10. 下面术语中( ) 是数据库系统原理与应用课程的关键词。(2分) A.数据模型 B.编程语言 C.软件体系结构 D.数据转换 .标准答案:A 11. 因为关系数据库的查询优化技术,用户程序员不用了解数据库中数据的物理存储结构,也能编写高效率的程序。(2分) ( ) .标准答案:正确 12. 关系操作中的投影运算必须有两个关系同时参与运算才能得到正确的结果。(2分) ( ) .标准答案:错误 13. DBTG中的系是一棵二级树,表示的是系主记录型(Owner)和成员记录型(member)之间一对多的关系,但两个记录之间可以定义多个系。(2分) ( ) .标准答案:正确 14. DBMS作为一种大型的系统软件,可以通过相关技术绕过操作系统,直接管理存储在硬盘上的数据。(2分) ( ) .标准答案:错误 15. 数据模型的是三要素指,数据结构、数据操作和完整性约束条件。其中数据结构是描述系统的静态特性的,数据操作是描述系统动态特性的。(2分) ( ) .标准答案:正确 16. 在数据库中,数据独立性是指数据之间相互独立,互不依赖。(2分) ( ) .标准答案:错误 17. SQL语言的视图对应三级模式的外模式,表对应模式,所以用户程序只能使用视图而不能直接使用表来查询和操作数据库中的数据。(2分) ( )

数据库原理实验报告

数据库原理 实验报告 系别电子信息系 专业计算机科学与技术班级学号4080522 姓名龚敏 指导教师李爱英

一.概要设计 1.教学数据库各表的关系模式:(加下线的属性为主键) 学生 (学号,姓名,性别, 出生日期,所在系) 英文缩写对照:student(s_no,s_name,s_sex,s_age,s_birthday,s_department) 课程 (课程号,课程名,学分) 英文缩写对照:course(c_no,c_name,c_score) 教师 (职工号,姓名,性别,职称) 英文缩写对照:teacher(t_no,t_name,t_sex,t_duty) 选课 (学号,课程号,成绩) 英文缩写对照:choice(s_no,c_no,score) 讲授 (职工号,课程号) 英文缩写对照:teaching(t_no,c_no) 2.教学数据库E-R 图: 实体:课程,学生,选课 联系:选课(学生同课程之间多对多的联系m:n),讲授(教师同课程之间多对多的联系m:n)。 二.逻辑设计 代码: use master go create database stu go use stu go n m m n 课程 教师 讲授 选课 学号 姓名 性别 出生日期 成绩 职工号 姓名 性别 职称 学分 课程号 课程名 学生

create table student (s_no char(8) not null primary key, s_name char(8) not null , s_sex varchar(8) not null, s_birthday smalldatetime not null, s_department varchar(13) not null) drop table student use stu go create table teacher (t_no char(8) not null primary key, t_name char(8) not null, t_sex varchar(8) not null, t_duty char(8) not null) create table course (c_no char(8) not null primary key, c_name char(8) not null, c_score varchar not null) create table choice( s_no char(8) not null primary key, c_no char(8) not null primary key, score varchar not null) create table teaching( t_no char(8) not null primary key, c_no char(8) not null primary key) insert student values('101','袁敏','女','1982-2-3','机电') insert student values('102','李志强','男','1983-4-5','计算机') insert student values('103','张亮','男','1984-10-9','建筑') insert student values('104','李平','女','1984-5-6','计算机') insert student values('105','王丽','女','1983-2-1','机电') insert student values('106','刘明耀','男','1982-4-16','计算机') select* from student insert course values('1011','C语言','6') insert course values('1012','数据结构','4') insert course values('1013','微机原理','6') insert course values('1014','数字电路','5') insert course values('1015','高等数学','6') select* from course insert teacher values('0511','张大维','男','副教授') insert teacher values('0512','林楠','女','讲师') insert teacher values('0513','韩晓颖','女','副教授') insert teacher values('0514','李辉','男','讲师') insert teacher values('0515','孙丽','女','助教') select* from teacher insert choice values('101','1011','82.5') insert choice values('101','1012','79') insert choice values('102','1012','92.5') insert choice

福建工程学院《实验指导书(数据库系统原理及应用)》

数据库系统原理 实验指导书 (本科)

目录 实验一数据定义语言 (1) 实验二SQL Sever中的单表查询 (3) 实验三SQL Serve中的连接查询 (4) 实验四SQL Serve的数据更新、视图 (5) 实验五数据控制(完整性与安全性) (7) 实验六语法元素与流程控制 (9) 实验七存储过程与用户自定义函数 (11) 实验八触发器 (12)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\S tuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10% 2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录; (4)将年龄的数据类型改为smallint; (5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime); (6)对表S,按年龄降序建索引(索引名为inxage); (7)删除S表的inxage索引; (8)删除S表; 5.在StuDB数据库中, (1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。 并输入相关数据。 (2)将StuDB数据库分离,在D盘下创建DB文件夹下找到StuDB数据库的两个文件,进行备份,后面的实验要用到这个数据库。 6.(课外)按照《数据库系统概论》(第四版)P74页习题5的SPJ数据库。创建SPJ数据 库,并在其中创建S、P、J和SPJ四张表。每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。要作好备份以便后面的实验使用该数据库数据。 三、实验要求:

(完整word版)数据库系统原理及应用教程第四版课后答案

第一章 1、(1)数据:数据用于载荷信息的物理符号。 (2)数据的特征;○1数据有“型”和“值”之分;○2数据受数据类型和取值范围的约束;○3数据有定性表示和定量之分;○4数据应具有载体和多种表现形式。 3、(1)数据管理的功能:○1组织和保存数据功能,即将收集到的数据合理地分类组织,将其存储在物理载体上,使数据能够长期的被保存;○2数据维护功能,即根据需要随时进行插入新数据,修改原数据和删除失效数据的操作;○3数据查询和数据统计功能,即快速的得到需要的正确数据,满足各种使用要求;○4数据的安全和完整性控制功能,即能保护数据的安全和完整性。 (2)数据管理的目标:收集完整的信息,将信息用数据表示,按数据结构合理科学的组织并保存数据;为各种使用快速地提供需要的数据,并保护数据的安全和完整性。 4、(1)数据库:是数据管理的新方法和技术,他是一个按数据结构来存储和管理数据的计算机软件系统。 (2)数据库中的数据具有的特点:○1数据库中的数据具有整体性,即数据库中的数据要保持自身完整的数据结构;○2数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数据库中的数据,多个用户可以同时共享数据库中的数据资源。 5、(1)数据库管理系统:它是专门用于管理数据库的计算机管理软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行操作的功能。 (2)数据库管理系统主要功能:是数据存储、数据操作和数据控制功能。其数据存储和数据操作是:数据库的定义功能,指未说明库中的数据情况而进行的建立数据库结构的操作;数据库建立功能,指大批数据录入到数据库的操作,它使得库中含有需要保护的数据记录;数据库维护功能,指对数据的插入、删除和修改操纵,其操作做能满足库中信息变化或更新的需求;数据库查询和统计功能,指通过对数据库的访问,为实际应用提供需要的数据。数据库管理系统的数据控制功能为:数据安全性控制功能,即为了保证数据库的数据安全可靠,防止不合法的使用造成数据库泄露和破坏,也就是避免数据被人偷看、篡改或破坏;数据库完整性控制功能,指为了保证数据库中的数据的正确、有效和相容,防止不合语意的错误数据被输入或输出。 14、(1)数据库系统的软件由几部分组成?数据库系统的软件中包括操作系统(OS)、数据库管理系统(DBMS)、主语言系统、应用程序软件和用户数据库。 (2)作用:①操作系统或汉字操作系统:操作系统是所有计算机软件的基础,在数据库系统中它起着支持DBMS及主语言系统工作的作用。如果管理的信息中有汉字,则需要中文操作系统的支持,以提供汉字的输入、输出方法和汉字信息的处理方法。②数据库管理系统和主语言系统:数据库管理系统是为定义、建立、维护、使用及控制数据库而提供的有关数据管理的系统软件。主语言系统是为应用程序提供的诸如程序控制、数据输入输出、功能函数、图形处理、计算方法等数据处理功能的系统软件。③应用开发工具软件:应用开发工具是DBMS系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代计算机语言等各种软件工具.如报表生成器、表单生成器、查询和视图设计器等,它们为数据库系统的开发和使用提供了良好的环境和帮助。④应用系统及数据库:数据库应用系统包括为特定的应用环境建立的数据库、开发的各类应用程序及编写的文档资料,它们是一个有机整体。通过运行数据库应用系统,可以实现对数据库中数据的维护、查询、管理和处理操作。(3)关系:

《数据库系统原理及应用》习题集及参考答案要点

《数据库系统原理及应用》习题集及参考答案 一、简答题 1、什么是数据库管理系统? 一种负责数据库的建立、操作、管理和维护的软件系统。 2、数据库系统有哪几种模式?分别用来描述什么? (1)外模式 是用户的数据视图,用来描述数据的局部逻辑结构,是模式的子集。 (2)模式 是所有用户的公共数据视图,用来描述数据库中全体数据的全局逻辑结构和特征。(3)内模式 又称存储模式,描述数据的物理结构及存储方式 3、什么是事务?事务有哪些特征? 答:所谓事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。 事务的特征:原子性、一致性、隔离性、持续性。 4、POWER BUILDER中事务对象有何作用? 答:PowerBuider的事务对象是应用程序与数据库之间进行通信的桥梁,在应用程序初启时,系统自动创一个为SQLCA(SQL Communication Area, SQL通讯区)的全局事务对象,该对象在应用程序的任何地方都可以访问 应用程序与数据库的所有通信都需要通过事务对象来完成,除了直接使用系统的缺省事务对SQLCA外,开发人员也可以创建自己的事务对象。 5、SQL SERVER中INSERTED表和DELETED表有何用? 答:触发器中用到两种特殊的表:删除表和插入表触发器中使用名为“deleted"和“inserted"来参照这些表;删除表存储受DELTE和UPDATE语句影响的行的副本当执行DELETE或UPDA TE语句时,行从触发器表中删除并传递到删除表中。删除表和触发器表通常没有共有的行。 插入表存储受INSERT和UPDA TE语句影响的行的副本当执行一NSERT或UPDA T语句时,新行同时增加到插入表和触发器表中。插入表中的行是触发器表中新行的副本可使用删除表和插入表中的行来参照相关表中的行, 或测试被删除或插入行中的值。 6、数据库系统由哪几部分构成? 答:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 7、什么是候选码?什么是主码?主码只能有一个属性吗? 答:能唯一标识实体的属性或属性组称为超码,其任意真子集都不能成为超码的最小超码称为候选码;

数据库原理实验报告分析

2013级数据库原理实验报告 专业:_______计算机___ 班级:________________ 学号:______________ 姓名:_______________ 2015年5月

实验一 SQL Server 2005基本操作 一、实验目的 了解SQL Server 2005组件; 了解SQL Server数据库组成; 掌握SQL Server 2005界面基本操作。 二、实验内容 (1)开始->程序->Microsoft SQL Server 2005-> SQL Server Management Studio,打开后进入到SQL Server 2005主体界面 (2)点击?数据库?前面的?+?,可以展开查看数据库,并且可以继续展开下级目录,查看数据库中的表、视图等。 (3)了解SQL Server 2005菜单栏的一些主要工具的使用。 (4)学生动手操作SQL Server 2005,打开数据库,打开表,打开查询界面;查看数据库的属性、表的属性等。 三、实验总结 进行这次实验有遇到什么问题?怎么解决的? 答:此次实验我们一步一步按照实验内容操作的,基本上没有遇到问题。

实验二数据定义 一、实验目的 掌握SQL Server 2005的数据库创建; 掌握SQL Server数据定义语言; 掌握SQL Server 2005数据定义的SQL语言定义与管理器定义两种方式。 二、实验内容 (1)创建、修改、删除数据库。 创建要求:数据库Employee中包含一个数据库文件Empdat1.mdf和一个日志文件Emplog.ldf。其中,数据文件大小为10MB,最大为50MB,以5MB速度增长;日志文件大小为5MB,最大为25MB,以5%速度增长。 修改要求:增加第二个数据库文件Empdat2.ndf,其中,数据文件大小为5MB,最 大为25MB,以2MB速度增长。 (2)利用SQL创建人员表person、月薪表salary及部门表dept。 见上页图 要求:按表2-1、表2-2及表2-3中的字段说明创建。

《数据库系统原理》实验报告

《数据库系统原理》实验 实验1 表和表数据的操作 一、实验目的 掌握在SQL Server 2000环境下,利用SQL语言创建和管理表的方法。 二、实验要求 1、学会利用SQL语句建立自定义数据类型; 2、掌握使用SQL语句建立数据表的方法; 3、掌握数据表的修改及删除方法(界面方式及语句方式); 4、掌握T-SQL中的INSERT、UPDATE及DELETE语句的使用方法; 三、实验内容 1、创建数据库 利用“查询分析器”创建“stuscore”数据库。 CREATE DATABASE stuscore 2、创建数据表 (1)用“查询分析器”建立stuscore数据库中的学生表(Student)、班级表(Class)、课程表(Course)及成绩表(Grade),结构如下: create table student (sno char(8) primary key, sname varchar(10), sex char(2), clsno char(6), stuaddr varchar(20), birthday char(20), height DEC(4,2), foreign key(clsno) references class(clsno) );

create table class (clsno char(6) primary key, clsname varchar(16), dorector varchar(10), specialty varchar(30) ); create table course (cno char(4) primary key, cname varchar(16), pcno char(4), credit tinyint ); create table grade (sno char(8), cno char(4), scorce int, primary key(sno,cno) );

编译原理实验报告

编译原理实验报告 班级 姓名: 学号: 自我评定:

实验一词法分析程序实现 一、实验目的与要求 通过编写和调试一个词法分析程序,掌握在对程序设计语言的源程序进行扫描的过程中,将字符形式的源程序流转化为一个由各类单词符号组成的流的词法分析方法。 二、实验内容 根据教学要求并结合学生自己的兴趣和具体情况,从具有代表性的高级程序设计语言的各类典型单词中,选取一个适当大小的子集。例如,可以完成无符号常数这一类典型单词的识别后,再完成一个尽可能兼顾到各种常数、关键字、标识符和各种运算符的扫描器的设计和实现。 输入:由符合或不符合所规定的单词类别结构的各类单词组成的源程序。 输出:把单词的字符形式的表示翻译成编译器的内部表示,即确定单词串的输出形式。例如,所输出的每一单词均按形如(CLASS,VALUE)的二元式编码。对于变量和常数,CLASS字段为相应的类别码;VALUE字段则是该标识符、常数的具体值或在其符号表中登记项的序号(要求在变量名表登记项中存放该标识符的字符串;常数表登记项中则存放该常数的二进制形式)。对于关键字和运算符,采用一词一类的编码形式;由于采用一词一类的编码方式,所以仅需在二元式的CLASS字段上放置相应的单词的类别码,VALUE字段则为“空”。另外,为便于查看由词法分析程序所输出的单词串,要求在CLASS字段上放置单词类别的助记符。 三、实现方法与环境 词法分析是编译程序的第一个处理阶段,可以通过两种途径来构造词法分析程序。其一是根据对语言中各类单词的某种描述或定义(如BNF),用手工的方式(例如可用C语言)构造词法分析程序。一般地,可以根据文法或状态转换图构造相应的状态矩阵,该状态矩阵同控制程序便组成了编译器的词法分析程序;也可以根据文法或状态转换图直接编写词法分析程序。构造词法分析程序的另外一种途径是所谓的词法分析程序的自动生成,即首先用正规式对语言中的各类单词符号进行词型描述,并分别指出在识别单词时,词法分析程序所应进行的语义处理工作,然后由一个所谓词法分析程序的构造程序对上述信息进行加工。如美国BELL实验室研制的LEX就是一个被广泛使用的词法分析程序的自动生成工具。 总的来说,开发一种新语言时,由于它的单词符号在不停地修改,采用LEX等工具生成的词法分析程序比较易于修改和维护。一旦一种语言确定了,则采用手工编写词法分析程序效率更高。 四、实验设计 1)题目1:试用手工编码方式构造识别以下给定单词的某一语言的词法分析程序。 语言中具有的单词包括五个有代表性的关键字begin、end、if、then、else;标识符;整型常数;六种关系运算符;一个赋值符和四个算术运算符。参考实现方法简述如下。 单词的分类:构造上述语言中的各类单词符号及其分类码表。 表I 语言中的各类单词符号及其分类码表 单词符号类别编码类别码的助记符单词值

数据库原理实验报告(5)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验五嵌套子查询设计实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)掌握多表查询和子查询的方法。 (2)熟练使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 (3)理解不相关子查询和相关子查询的实现方法和过程。 2.实验要求 (1)针对“TM”数据库,在SQL Server查询分析器中,用T-SQL语句实现以下查询操作: a)查询选修了数据结构与算法的学生学号和姓名。 b)查询07294002课程的成绩低于孙云禄的学生学号和成绩。 c)查询和孙云禄同年出生的学生的姓名和出生年份。 d)查询其他系中年龄小于数学与信息技术学院年龄最大者的学生。 e)查询其他系中比数学与信息技术学院学生年龄都小的学生。 f)查询同孙云禄数据库原理与应用课程分数相同的学生的学号和姓名。 g)查询选修了07294002课程的学生姓名。 h)查询没有选07294002课程的学生姓名。 i)查询同时选修了07295006和07295007课程的学生的学号。 j)查询所有未授课的教师的工号、姓名和院系,结果按院系升序排列。 扩展实验: a)查询和10060101选修的全部课程相同的学生的学号、课程号、期末考试 成绩。 b)查询至少选了10060101选修的全部课程的学生的学号。 c)查询年龄比所在院系平均年龄小的学生的学号、姓名、年龄、院系,按 院系和年龄升序排列。 d)查询每门课都在80分以上的学生的学号和姓名。 (2)在SQL Server Management Studio中新建查询,尽可能用多种形式表示实验中的查询语 句,并进行比较。 (3)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 将调试成功的T-SQL语句写在下方(标明题号)。

上海市高等教育自学考试数据库系统原理(实践)

上海市高等教育自学考试 计算机信息管理、网络、软件专业 (独立本科段) 《数据库系统原理》实践性环节考核大纲 一、考核目标 1. 具有熟练使用PowerBuilder 9.0建立本地数据库和基本表、视图的能力。 2.掌握使用PowerBuilder 9.0建立数据库应用程序的方法。 二、运行环境 1. 平台:Windows 2000 2. PowerBuilder 9.0 软件 三、考核方式 实行闭卷考核。 四、考核时间和日期 上机考核每次为1小时;考核日期另行规定。 五、考核范围 1. 数据库的基本操作 建立数据库;连接数据库;建立表、主键、外键; 数据插入、查询、删除和修改;建立视图。 2. 建立数据库应用程序 建立工作空间、目标、应用;建立数据窗口对象; 建立主窗口(含数据窗口、命令按鈕、静态文本框和单行编辑器等控件); 书写脚本;运行应用程序。 六、上机参考书籍及内容 《数据库系统原理》,全国高等教育自学考试指导委员会组编,丁宝康主编,经济科学出版社2007年版。 教材“第8章 PowerBuilder 9.0简介及应用”中 8.2节(“学生选课系统”开发过程)中“‘数据操作’窗口”的有关内容。具体上机样题见下面内容七。 七、上机样题 (一)上机题目 在PowerBuilder9.0环境中完成下面两个任务: ·建立一个有关学生、课程、选修等有关信息的数据库; ·建立有关数据浏览、插入、查找、修改和删除等操作的应用程序及界面。 (二)操作步骤(应严格按照下列步骤操作) 1. 建立数据库newdb (数据库文件newdb.db必须保存在C:\temp目录下)。 (自动连接数据库,ODBC数据源名也为newdb)。 2. 在数据库newdb中建立三张表: s(sno,sname,age,sex) c(cno,cname,tname) sc(sno,cno, score) 上述属性中,age和score为smallint型,其余均为char型。

数据库原理实践报告参考格式

数据库原理实践报告 学生学号: 学生姓名: 学生所在班级: 指导教师: 2013至 2014 年第一学期

实践任务 一、编程练习 假设有职工工资表: R(职工号,,基本工资,附加工资,房租,水电,应发工资,税款,实发工资) 缴纳个人所得税的规定如下: 个人收入>5000,税率20% 个人收入>2000,税率10% 个人收入>800,税率5% 个人收入<800,免税 工资的计算方法: (1)应发工资=基本工资+附加工资 (2)采取分段计算税款的算法,超出5000部分收20%,2000~5000之间部分收10%,以此类推。 (3)实发工资=应发工资-税款 试编写一个简单SQL脚本程序,创建工资表并完成计算实发工资的任务。 二、案例设计 自主选择一种系统,完成需求分析、概念设计、逻辑结构设计、规化(3NF)及数据库的创建。 1.需求分析(业务规则) 生产管理系统的业务规则如下: (1)一件产品可以由多个零件组成,一个零件可以组装多件不同的产品。 (2)一件产品可以使用多种材料,一种材料可以用于多件不同的产品。 (3)一个零件可以消耗多种材料,一种材料可以用于多个不同的零件。 (4)一个仓库可以存放多种材料,一种材料可以存放在多个仓库中。 2.概念结构设计(E-R图) (1)实体集:工程、零件、供应商。 (2)联系集:产品实体与零件实体之间是多对多联系“组装”,产品实体与材料实体之间是多对多联系“使用”,零件实体与材料实体之间是多对多联系“消耗”,仓库实体与材料实体之间是一对多联系“存储”。 (3)局部E-R图

(4)全局E-R 图 产品与材料之间的使用联系可由产品与零件之间的组装联系以及零件与材料之间的消耗联系推导出来,属于冗余联系,消除后得到全局E-R 图。 3.逻辑结构设计(关系模式) (1)实体集转换为关系模式 产品(产品号,产品名,价格) 零件(零件号,零件名,价格) 材料(材料号,材料名,价格)

数据库系统原理实践考核指导

《数据库系统原理》实践环节考核指导 (2008年9月修订) 1、类型 课程实验考核 2、目的与要求 本课程是一门理论与实际紧密结合、实践性强的课程。通过上机实践,帮助学生加深对课程的理解,更好地掌握数据库技术,并达到应用的目的,进而培养他们全面掌握所学知识,在实践中培养独立分析和解决问题的能力。 本课程的主要考核目标是检查学生利用SQL语言解决问题的能力,强调测试学生利用SQL 语句完成基本的数据定义和数据操作的技能,检查学生设计和运用SQL语言解决实际问题的能力。 3、考核环境 ●操作系统:Windows2000 ●数据库管理系统:SQL Server 2000中文版 4、考核内容 ●SQL Server 2000的企业管理器、查询设计器; ●其他类型数据库的导入与导出(主要是Access类型数据库); ●数据库的创建和修改; ●基本表的创建和修改(要求使用SQL语句完成); ●基本表中数据的管理(要求使用SQL语句完成):INSERT命令、UPDATE命令、DELETE命令; ●数据的检索(要求使用SQL语句完成):单表查询、连接查询、计算查询、分组查询等; ●索引、存储过程和视图的创建(要求使用SQL语句完成); ●创建登陆标识并设置操作数据库权限; ●ODBC的概念与配置。 5、考核时间 考试时间为60分钟。 6、考核形式和方法

采用闭卷机考形式,考生首先登录考试服务器,阅读考试要求,在考试文件夹D:\2008ks下完成指定的开发要求,所有答案都直接做在文件夹d:\2008ks内,最后根据考试要求把答案文件上传到考核服务器上考生自己的文件柜中(上传的答案文件不要压缩打包)。 请认真阅读“考试系统”使用说明。 7、注意事项 1.遵守考场纪律,因计算机引起的问题请及时与监考老师联系;有些操作步骤或操作贴图文件需要以Word形式保存,请按照要求保存文件名。 2.考生不要等到最后才上传答案文件,以免因最后时刻交卷人员太多造成服务器响应速度低;上传文件前务必关闭相应的软件。例如上传Word文档前应关闭Word系统。上传数据库文件前必须停止SQL Server服务管理器。 3.如果发现无法登录系统,请及时与监考老师联系,由监考老师协助处理。 4.本系统采取了一定安全性措施,系统自动记录考生的登录时间和登录微机(登录时间取自服务器)。一旦发现同一时间段内有两台微机同时以某个考号登录系统,将按作弊处理。一旦发现某台微机在考试期间用两个准考证号登录过考试系统。也按照作弊处理。 5.考试完毕,主动删除D盘上的相关文件夹。 6.注意保护自己的二次登录密码,不要被其他考生知道。 7.考生在考试前如果使用了模拟环境,请于考试开始前关闭所有浏览器窗口,然后重新登录考试服务器。 8、参考样题 请从考核服务器中下载考试用的文件到本地磁盘D:\2008ks下,然后在本地磁盘上用SQL Server 2000完成任务,最后把正确的结果文件上传到服务器上自己的考试文件柜中。 考试结束前本考卷需要上传的文件至少有:数据库对应的数据文件和日志文件、ans.doc。为保证文件的完整性,开始压缩文件前请退出企业管理器和查询设计器,关闭Word文档,停止SQL Server的服务管理器。然后逐个文件上传到自己的考试文件柜中。 下载:请以鼠标右单击“下载”,然后在弹出的快捷菜单中选择“目标另存为”,把文件保存到本地的D:\2008ks下。 样题一 一、创建数据库与数据表(40分) 1.请从考核服务器上下载Access数据库文件stud.mdb; 2.使用服务管理器在本地机器上启动SQL Server服务,接着启动企业管理器;然后创建一个大小为1MB的数据库student,事务日志的大小为1MB。注意数据文件和事务日志文件都保存在D:\2008ks下。 3.把Access数据库文件stud.mdb导入到数据库student中; 4.设置学生表的主键学号、课程表的主键课程号; 5.请用SQL语句在student数据库中创建表“家庭”。表结构如下所示: 家庭表,结构为:学号(C4),姓名(C8),父姓名(C8),父单位(C10),母姓名(C8),母单位(C10);学号为主键。

编译原理实验报告总结

学年第学期《编译原理》实验报告 学院(系):计算机科学与工程学院 班级:11303070A 学号:11303070*** 姓名:无名氏 指导教师:保密式 时间:2016 年7 月

目录 1.实验目的 (1) 2.实验内容及要求 (1) 3.实验方案设计 (1) 3.1 编译系统原理介绍 (1) 3.1.1 编译程序介绍 (2) 3.1.2 对所写编译程序的源语言的描述 (2) 3.2 词法分析程序的设计 (3) 3.3 语法分析程序设计 (4) 3.4 语义分析和中间代码生成程序的设计 (4) 4. 结果及测试分析 (4) 4.1软件运行环境及限制 (4) 4.2测试数据说明 (5) 4.3运行结果及功能说明 (5) 5.总结及心得体会 (7)

1.实验目的 根据Sample语言或者自定义的某种语言,设计该语言的编译前端。包括词法分析,语法分析、语义分析及中间代码生成部分。 2.实验内容及要求 (1)词法分析器 输入源程序,输出对应的token表,符号表和词法错误信息。按规则拼单词,并转换成二元形式;滤掉空白符,跳过注释、换行符及一些无用的符号;进行行列计数,用于指出出错的行列号,并复制出错部分;列表打印源程序;发现并定位词法错误; (2)语法分析器 输入token串,通过语法分析,寻找其中的语法错误。要求能实现Sample 语言或自定义语言中几种最常见的、基本的语法单位的分析:算术表达式、布尔表达式、赋值语句、if语句、for语句、while语句、do while语句等。 (3)语义分析和中间代码生成 输入token串,进行语义分析,修改符号表,寻找其中的语义错误,并生 成中间代码。要求能实现Sample语言或自定义语言中几种最常见的、基本的语法单位的分析:算术表达式、布尔表达式、赋值语句、if语句、for语句、while 语句、do while语句等。 实验要求:功能相对完善,有输入、输出描述,有测试数据,并介绍不足。3.实验方案设计 3.1 编译系统原理介绍 编译器逐行扫描高级语言程序源程序,编译的过程如下: (1).词法分析 识别关键字、字面量、标识符(变量名、数据名)、运算符、注释行(给人看的,一般不处理)、特殊符号(续行、语句结束、数组)等六类符号,分别归类等待处理。 (2).语法分析 一个语句看作一串记号(Token)流,由语法分析器进行处理。按照语言的文法检查判定是否是合乎语法的句子。如果是合法句子就以内部格式保存,否则报错。直至检查完整个程序。 (3).语义分析 语义分析器对各句子的语法做检查:运算符两边类型是否相兼容;该做哪些类型转换(例如,实数向整数赋值要"取整");控制转移是否到不该去的地方;是

相关主题
文本预览
相关文档 最新文档